GridView или TableLayout? - PullRequest
       10

GridView или TableLayout?

5 голосов
/ 25 октября 2011

http://img683.imageshack.us/img683/645/weatherscreenmockupoutl.png

Я спрашиваю себя, как лучше всего закодировать этот макет. В основном мне просто нужно знать, как получить семь столбцов одинаковой ширины.

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

Ответы [ 5 ]

4 голосов
/ 25 октября 2011

если это равная ширина, которую вы хотите, вы можете перейти к linearLayout с детьми равного веса. проверьте следующее xml.

<LinearLayout
    layout:orientation="horizontal"
>
    <LinearLayout
      android:id = "@+id/firstcolumn"
      android:layout_weight="1"
      android:orientation="vertical"
      android:layout_width="0dp"
    >
    // do the same for your rest of the six children

</LinearLayout>
3 голосов
/ 25 октября 2011

TableLayout кажется лучше, потому что количество столбцов не изменится.С GridView вы должны добавить адаптеры и прочее.

2 голосов
/ 03 апреля 2012

Вы можете сделать хорошую комбинацию TableLayout с TableRow, и сделать строки и столбцы, как вы хотите, очень легко.

Это пример с сеткой 2x2 с 4 кнопками (например, внутри LinearLayout):

<TableLayout
    android:id="@+id/tableLayout1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" >

    <TableRow
        android:id="@+id/tableRow3"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" >

        <Button
            android:id="@+id/button1"
            android:layout_weight="1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" />

        <Button
            android:id="@+id/button2"
            android:layout_weight="1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" />
    </TableRow>

    <TableRow
        android:id="@+id/tableRow4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" >

        <Button
            android:id="@+id/button3"
            android:layout_weight="1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" />

        <Button
            android:id="@+id/button4"
            android:layout_weight="1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" />
    </TableRow>
</TableLayout>
0 голосов
/ 23 декабря 2014
/>
<GridView 
android:layout_width="match_parent"
android:layout_height="match_parent"
android:columnWidth="90dp"
android:numColumns="7"
android:stretchMode="columnWidth"
android:gravity="center"
/>

попробуйте это ..

0 голосов
/ 18 декабря 2012

Лучше всего использовать gridview. Попробуйте что-то вроде этого:

<GridView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:numColumns="7" />
...