GridView с разными размерами столбцов

Пытаюсь создать список рекордов, который можно прокручивать и который выглядит следующим образом:

foo         1000
bar         876
foobar      500
foobarfoo   1

В настоящее время я делаю это с помощью GridView. Я хотел бы установить ширину столбца имени на 60% экрана и ширину столбца оценки на 40%. Возможно ли?

Сейчас пытаюсь через переходник костюма. Вот функция getview для этого:

public View getView(int position, View convertView, ViewGroup parent) {
    TextView tv;
    if (convertView == null) {
        tv = new TextView(context);
        tv.setTextSize(25);
        tv.setTextColor(Color.WHITE);              

        if (position % 2 == 0)
        {
            tv.setLayoutParams(new GridView.LayoutParams((width/10)*6, 50));
        }
        else
        {
            tv.setLayoutParams(new GridView.LayoutParams((width/10)*4, 50));
        }
    }
    else {
        tv = (TextView) convertView;
    }

    tv.setText(texts[position]);
    return tv;
}

Макет создается с помощью gridview и кнопки внизу. Файл XML:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent" android:orientation="vertical" android:id="@+id/top">
    <GridView android:layout_width="fill_parent"
              android:layout_height="wrap_content"
              android:layout_weight="2"
              android:id="@+id/grid"
              android:numColumns="2"
              android:columnWidth="0dp"
              >
    </GridView>
    <Button android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/backbutton" android:text="@string/backstr"></Button>

</LinearLayout>

Итак, вопрос еще раз: можно ли настроить GridView для добавления столбцов разного размера? Если да, то мой подход хорош? (Вероятно, нет, так как он не работает :)) Я что-то пропустил?

Заранее спасибо!

7
задан rekire 22 May 2013 в 05:25
поделиться