Объединение столбцов с помощью TableLayout

Возможный дубликат:
Что эквивалентно colspan в Android TableLayout?

В документации для TableLayout говорится: «Ячейки могут охватывать столбцы, как в HTML». Однако я не могу найти способ сделать это.

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


person Shawn Lauzon    schedule 27.08.2011    source источник
comment
Дубликат: stackoverflow.com/q/2710793/165674   -  person Dheeraj Vepakomma    schedule 22.06.2012


Ответы (2)


добавьте android:layout_span="3", чтобы охватить 3 столбца. Например:

        <TableRow>
            <Button android:id="@+id/item_id"
                android:layout_span="2"
                android:layout_width="wrap_content" 
                android:layout_height="wrap_content" 
                android:text="item text" />     
        </TableRow>
person IncrediApp    schedule 27.08.2011
comment
А, вот оно, в TableRow.LayoutParams: developer.android.com /ссылка/android/виджет/ - person Shawn Lauzon; 27.08.2011
comment
Найти эти XML-файлы макета сложно — легко забыть, что атрибуты android:layout_* находятся в отдельных javadocs. - person Shawn Lauzon; 27.08.2011
comment
-1, Это решение не работает, когда текст кнопки слишком мал. Например, когда текст представляет собой только +, как в приложении-калькуляторе, кнопка не будет увеличиваться, пока не закроет два столбца (если эти два столбца шире, чем кнопка без columnSpan). - person Zelphir Kaltstahl; 27.01.2016
comment
Почему мы не можем использовать вес на представлении выше, т.е. на кнопке - person eC Droid; 31.07.2017

android:layout_span делает свое дело.

пример:

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TableRow>
    <TextView android:id="@+id/info"
        android:layout_span="2"
        android:text="some text"
        android:padding="3dip"
        android:layout_gravity="center_horizontal" />
</TableRow>
<TableRow>
    <TextView android:text="some other text" 
        android:padding="3dip" />
    <TextView android:text="more text" 
        android:padding="3dip" />
</TableRow>
</TableLayout>
person segfaultomatic    schedule 27.08.2011