2012-06-25 2 views
1

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

Пример:

Пользователь может добавить EditText, который будет использовать ширину экрана и добавить CheckBox после EditText, которые будут помещены ниже EditText. И также можно добавить кнопку или счетчик, который будет использовать оставшуюся часть ширины экрана. Пользователь может использовать все необходимые элементы управления.

Как я могу достичь этой цели?

ответ

0

Вместо gridview вы можете использовать TableLayout, который имеет несколько элементов TableRow.

Интересно, что ширина столбца определяется шириной самого широкого элемента в столбце.

Вы можете ознакомиться с TableLayout documentation для получения дополнительной информации.

0

Существует несколько способов сделать это, например, TableLayout, а также использовать множество вложенных макетов.

Способ TableLayout - это, вероятно, лучший и самый простой способ реализовать то, что вы ищете.

Если вы хотите динамически изменять компоновку в зависимости от ширины экрана, есть два пути.

Способ 1 Программно создайте макеты вместо использования файлов макета xml. таким образом вы можете делать вычисления и менять вещи «на лету».

Способ 2 Возможно, это так, как я бы это сделал. Включите различные файлы макета для разных плотностей экрана, ориентации и размеров.

+0

i undestand, но я скорее хочу использовать способ добавления элементов до тех пор, пока ширина линии не будет заполнена, чем разломы. может быть, я не был чист. – Rothariger

+0

Так динамически меняется, где материал появляется в зависимости от ширины экрана? – StuStirling

+0

Посмотрите выше для динамических макетов – StuStirling

Смежные вопросы