Подтвердить что ты не робот

Как работает метод ArrayAdapter getView()?

Я хочу сделать ArrayAdapter для отображения изображения и текста. Мне не нужны примеры, если это возможно. Я хотел бы, чтобы кто-то объяснил мне, как работает getView().

Спасибо.

4b9b3361

Ответ 1

getView() является основной частью вашего адаптера. Он возвращает View, который будет отображаться в виде списка/сетки/галереи/любого вида, использующего элемент адаптера. Он запускается при прокрутке списка (например, списка).

Итак, первое, что вы должны сделать, чтобы создать свой собственный адаптер. Вы можете продлить его с BaseAdapter. Затем вам нужно создать некоторые данные для отображения (или передать их адаптеру со стороны - лучшее решение).

После этого переопределите метод getView() и обязательно верните свой собственный вид. В вашем случае это должно быть Layout с ImageView и TextView (и не забудьте заполнить их).

Вы можете узнать больше:

Ответ 2

в BaseAdapter у вас есть функция getView, вызываемая для AdapterView i.e. ListView.

вам нужно переопределить метод getCount базового адаптера, чтобы вернуть общее количество просмотров в diplay.

И в getView вы получаете следующие вещи:

public View getView(int position, View convertView, ViewGroup parent) 
  • положение:

    getView будет вызываться для каждой позиции каждый раз, когда он отображается.

  • convertView

    Поскольку getView - вызов много раз, раздувая новое представление, каждый раз дорого, поэтому просмотр списка предоставляет вам одно из ранее созданного представления для повторного использования.

  • parent

    Ссылка на родительское представление, что это представление будет дочерним.

ArrayAdapter является подклассом BaseAdapter, который принимает ArrayList (или массив) в конструкторе. И переопределяет getCount для вас.

Итак, все, что вам нужно реализовать, это getView