ListView не рассчитывать против графа адаптер в Андроид
Почему listview.getChildCount()
и adapter.getCount()
возвращают разные значения? У меня есть метод onScroll, и из него, если я вызываю методы выше, каждый возвращает разные значения. Кто-нибудь знает почему?
2 ответа:
ListView.getChildCount()
возвращает числоViews
на экране.Adapter
sgetCount()
возвращает общее число объектов в списке.У вас может быть 50
String
s, скажем, вArrayAdapter
, но в текущий момент на экране нарисовано только 10, поэтому ваш счетListView
будет 10, а ваш счетAdapter
будет 50.
adapter.getCount()
возвращает общее количество объектов, содержащихся в нем.listView.getChildCount()
возвращает количество представлений, показанных в этом listview. Адаптер использует механизм кэширования, и многие представления используются повторно, поэтому его номер отличается от показанного вadapter.getCount()