AndroidのListViewから最初に表示されるビューを取得する方法はありますか?
アダプタの最初のビューを裏付けるデータを取得できますが、ListViewの最初のビューを取得できないようです。
スクロールアクションが終了した後、最初に表示されるビューを変更したいと思います。ビューへの参照を保存するべきではないことを私は知っています。
AndroidのListViewから最初に表示されるビューを取得する方法はありますか?
アダプタの最初のビューを裏付けるデータを取得できますが、ListViewの最初のビューを取得できないようです。
スクロールアクションが終了した後、最初に表示されるビューを変更したいと思います。ビューへの参照を保存するべきではないことを私は知っています。
実際には、ListView アイテムは ListView の単なる子です。したがって、最初に表示される ListView アイテムは次のとおりです。
listView.getChildAt(0)
ListView には関数があるgetFirstVisiblePosition
ため、最初に表示されるビューを取得するには、コードは次のようになります。
listView.getChildAt(listView.getFirstVisiblePosition());
次のコードを使用できます。
for (int i = 0; i <= conversationListView.getLastVisiblePosition() - conversationListView.getFirstVisiblePosition(); i++) {
View listItem = conversationListView.getChildAt(i);
}
listView.scrollBy(0, -40);
これは非常にうまく機能します