Инфляция, getView, arrayAdapaters и все, что между ними - PullRequest
1 голос
/ 26 марта 2011

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

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

ArrayAdapters - я бы использовал его для заполнения моих списков данными.но иногда вы можете использовать:

 setListAdapter(new ArrayAdapter<String>(this,
                                    R.layout.row, R.id.textview,
                                            items));

без необходимости инфляции или переопределения метода @getView.с другой стороны, я думаю, что ограничит вас в других случаях?(в каких случаях?)

Приведенный выше код также выполняет какое-то настраиваемое представление списка (просмотр строки и текста).так кому все остальное нужно?

переопределение метода getView - я видел много примеров, когда разработчики смешивали инфляцию внутри метода @getView.Я также видел инфляцию вне метода getView ... какова цель каждого варианта ??

Если кто-нибудь может прояснить мне эту идею.это было бы прекрасно.Я знаю эти 3 темы, касающиеся пользовательских списков.

Спасибо, Рэй.

1 Ответ

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

Я думаю, вы пытаетесь настроить ListView верно?

Вы легко можете сделать это с помощью адаптера массива по умолчанию, вы разместили подходящий код в своем вопросе.Если вы хотите создать свой пользовательский ListView с вашим пользовательским ArrayAdapter, вам нужно переопределить ArrayAdapter.Здесь вы можете переопределить getView -метод.

Обычно вы определяете View, который вы хотите передать в файле XML Layout.В вашем Adapter вы просто хотите принять его в соответствии с данными.Чтобы вставить View в свой код Java, вы используете LayoutInflator.Имея раздутый View, вы можете легко изменить и вернуть его.

Надеюсь, это поможет, Джонатан

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