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