-1

2 つのテキストビューを持つ CustomAdapter があります。それぞれの値/文字列を取得する必要があります。

これを行うことで最初のものをつかむことができます:

List<String> dataList;
List<String> catList; 
public void onItemClick(AdapterView<?> arg0, View arg1,
                    int arg2, long id) {

firstTextView = dataList.get(arg2); // This grabs TextView #1
secondTextView = catList. ???

// later on


adapter = new SearchAdapter(SearchableActivity.this, dataList, catList);
setListAdapter(adapter);

2 番目の値を取得するにはどうすればよいですか? 明らかにarg3を作成できません

何か案は?

編集:または、これは ArrayAdapter では実行できず、たとえば BaseAdapter でよりカスタムなものを作成する必要がありますか?

4

1 に答える 1

1

onItemClickメソッドの2番目のパラメーターを使用します。

TextView first = (TextView) arg1.findViewById(R.id.first_textview);
String s1 = first.getText().toString();
TextView second = (TextView) arg1.findViewById(R.id.second_textview);
String s2 = second.getText().toString();

次のような2つの文字列を組み込んだ特別なオブジェクトをアダプタから返す方がよいかもしれません。

class DataStructure {
    String s1, s2
}

このアダプタからこれを返します。

于 2012-07-19T04:30:57.317 に答える