Muszę znaleźć pozycję piksela jednego elementu na liście, która została wyświetlona przy użyciu ListView
. Wygląda na to, że powinienem pobrać jeden z TextView, a następnie użyć getTop()
, ale nie mogę dowiedzieć się, jak uzyskać widok podrzędny pliku ListView
.
Aktualizacja: elementy podrzędne elementu ViewGroup
nie odpowiadają 1-do-1 elementom na liście, dla a ListView
. Zamiast tego ViewGroup
dzieci odpowiadają tylko tym widokom, które są teraz widoczne. Więc getChildAt()
działa na indeksie, który jest wewnętrzny w stosunku do indeksu ViewGroup
i nie musi mieć nic wspólnego z pozycją na liście, której ListView
używa.
firstPosition
powinno byćint firstPosition = listView.getFirstVisiblePosition() - listView.getHeaderViewsCount();
naprawienie tego.