Как getcount () в адаптере массива возвращает значения без явного получения размера массива? - PullRequest
0 голосов
/ 22 октября 2019

Этот вопрос может показаться глупым, но я не могу не спросить здесь.

Я знаю, что в адаптере Array, getcount() метод используется для возврата количества элементов, отображаемых в списке. Я также знаю, что нам нужно переопределить его и вернуть размер массива или количество списков для отображения в макете.

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

Так что мой вопрос

1) Действительно ли необходимо переопределить метод для отображения списков? Как метод getcount знает, сколько списков отображать, не переопределяя его, как это делается во многих онлайн-блогах.

2), когда нет необходимости переопределять getcount() и по-прежнему получать представления, как предполагалось.

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

1 Ответ

2 голосов
/ 22 октября 2019
  1. внутри адаптера (не самого списка) - да, вы должны переопределить этот метод и вернуть количество элементов (например, прямо из list.size ())
  2. показать эти "ссылки на многие онлайн-блоги", проверим. некоторые адаптеры (например, base ArrayAdapter ) могут иметь автоматический подсчет элементов, особенно когда они передаются в конструктор в List - этот класс является общеизвестной коллекцией, поэтому есть подготовленный адаптер для этого общего использования, ноесли у вас YourOwnClass заполнено собственным разрешением, то вам нужно расширить адаптер и обрабатывать подсчет самостоятельно
  3. показать некоторый код ... всегда
...