1

Androidでカスタムリストビューを備えたビューページャーを開発しました。チュートリアルView Pager Part 1-3に従いました。私の開発における主な違いは、ページャーのビューで customlistview を使用したことです。リストビューのリスト項目は、項目に関する詳細情報を表示するためのクリック イベントもサポートしています。

ここに問題があります。instantiateItem メソッド内で onItemClick を処理しましたが、アイテムがクリックされると、表示されるコンテンツが隣接するリストビューのコンテンツであることに気付きました (つまり、ページ 2 のアイテム 2 がクリックされた場合、表示される情報はページ 3 のアイテム 2 です)。

これは、ページャーが隣接するリストをロードしてユーザーのレンダリングを高速化し、コードが現在の表示のリストではなくプリロードされたリストを使用するために発生することに気付きました。

ビューページャー、コードスニペット、リンクなどでリストビューのクリックイベントを処理する適切な方法を見つけようと思いました..本当に役に立ちます。クリック イベントの処理に使用する適切なメソッド。

ありがとうございました

4

1 に答える 1

2

リストビューのアダプター (onItemClick メソッドの最初のパラメーター) から取得する必要があります。

@Override
public void onItemClick(AdapterView<?> a, View v, int position, long id) {
     // NOT THIS!: mValue = (HereYourClass) listView.getItemAtPosition(position);
     mValue = (HereYourClass)a.getAdapter().getItem(position);
}
于 2012-06-16T20:21:27.450 に答える