1. ホーム
  2. android

android - listview get item view by position

2023-09-08 02:27:41

質問

カスタムアダプタ(ベースアダプタ)を使ったリストビューがあります。私は位置によってリストビューからビューを取得したい。私は試してみました mListView.getChildAt(position) を試しましたが、それは動作しません。どのように私は位置によってアイテムビューを取得することができますか?

どのように解決するのですか?

これを使います。

public View getViewByPosition(int pos, ListView listView) {
    final int firstListItemPosition = listView.getFirstVisiblePosition();
    final int lastListItemPosition = firstListItemPosition + listView.getChildCount() - 1;

    if (pos < firstListItemPosition || pos > lastListItemPosition ) {
        return listView.getAdapter().getView(pos, null, listView);
    } else {
        final int childIndex = pos - firstListItemPosition;
        return listView.getChildAt(childIndex);
    }
}