0

質問が示唆するように、文字列 id または id に似たものを使用して listView の要素を識別することは可能ですか? 私は典型的な署名が

public void onItemClick(AdapterView<?> parent, View view,
            int position, long id) {...}

しかし、文字列 ID などが必要です。どうすればいいですか?

詳細(まだ不明な場合は申し訳ありません)

問題は、私の基になるリストがローテーション リスト (つまり、循環リスト) であることです。

myList.addFirst(myList.deleteLast());

そのため、アイテムの id/index は実際に変動し続けます。しかし、基本的に要素の一部である ID が必要です。これにより、回転に関係なく、目的の正確な要素をいつでも取得できます。

4

3 に答える 3

0

文字列の配列リストを作成します。そこに listview の文字列 id を追加します。

リストアイテムに非表示のテキストビューを追加します。

Array List のすべての文字列 id をリストビューの非表示のテキストビューに追加します。

以下のように文字列 ID にアクセスします。

public void onItemClick(AdapterView<?> parent, View view,int position, long id) {
    TextView anyId = (TextView) view.findViewById(R.id.anyID);
    String val_Id = anyId.getText().toString();

ArrayList を使用すると、動的リストビューを処理できます。

于 2013-08-16T02:27:59.557 に答える
0

リストビューの文字列 ID の配列を作成できます。onItemClick では、位置を使用して文字列配列を評価できます。リスト項目と文字列は同じサイズになるため、1 対 1 のマッピングが必要です。

私の言いたいことを理解していただければ幸いです..

于 2013-08-16T01:38:36.210 に答える
0

文字列の行 ID が必要な場合は、位置を取得してから文字列に変換してください。

于 2013-08-16T01:52:38.410 に答える