Установка ширины макета наполовину fill_parent в интерфейсе Android - PullRequest
0 голосов
/ 11 марта 2011

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

Ответы [ 2 ]

1 голос
/ 11 марта 2011

Решение зависит от некоторых деталей обстоятельств.

Если все строки имеют одинаковый формат

Если все строки имеют одинаковую структуру столбцов, установите android:stretchColumns="0" в TableLayout. Это сделает первый столбец (индекс 0) растянутым, чтобы заполнить все оставшееся пространство.

Если заголовок имеет формат, отличный от остальных строк

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

Если важно только позиционирование и вам не нужно охватывать несколько строк, вы можете использовать атрибут android:layout_column для каждого из элементов заголовка. Номер столбца основан на 0, поэтому первый столбец равен 0. Кажется, что построитель макета Eclipse не представляет этот атрибут, но он будет обрабатывать атрибут, если вы введете его в xml.

Если вы не можете поместить свои элементы в те же столбцы, которые использует остальная часть таблицы, тогда заголовок не принадлежит TableRow. Как предлагается в другом ответе, вы можете использовать RelativeLayout вместо TableRow. Кроме того, вы можете переместить заголовок за пределы таблицы.

0 голосов
/ 11 марта 2011

Во-первых, используйте RelativeLayout для вашей строки. Используйте типичный ImageView, присвойте ему идентификатор и используйте атрибут XML android:layout_alignParentRight="true". Затем используйте TextView, используйте android:layout_toLeftOf="@id/myid" и убедитесь, что его ширина равна "fill_parent".

редактировать: теги кода

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...