2014-01-06 2 views
1

Если вы создаете очень динамический список, скажем, где каждая строка может иметь различный набор типов ввода плюс дополнительные кнопки, а длина списка основана на другом динамическом значении, лучше ли это сделать в адаптере списка или создание пользовательского представления в окне прокрутки?Какой лучший метод в Android для создания динамического списка?

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

Например, скажем, что вы показываете что-то вроде экрана контактов с различными деталями, которые можно ввести о контакте. В некоторых строках будут введены текстовые входы (имя, адрес и т. Д.), У некоторых будут прядильщики (т. Е. Состояние, группа), у некоторых будут флажки (например, «любимые» или что-то еще). Кроме того, есть кнопка «добавить», которая позволяет вам добавить другое поле для редактирования. Стоит ли это сделать в адаптере списка или лучше заполнить пользовательский вид, и если нажать кнопку «добавить», мы заново создадим пользовательский вид, добавив вид того типа, который они хотят добавить?

Я надеюсь, что это ясно.

+0

Я не знаю, если я следую, но вы видели [это] (http://developer.android.com/reference/android /widget/BaseAdapter.html#getItemViewType(int))? – Emmanuel

ответ

0

ListViews (и список адаптеров) предназначены для данных, которые должны отображаться в основном аналогичных представлениях. Для вашего примера гораздо проще и естественнее иметь предопределенный файл макета с экраном и использовать видимость вида, чтобы выбрать, какие виды должны отображаться. Если вам нужно добавить представления на экран, вы можете сделать это динамически, используя findViewById на макете, а затем используя метод addView.

Позвольте мне знать, если вам нужно больше разъяснений или образец кода ...

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