listView のどの項目がクリックされたかに依存する要素にアクセスする必要がある配列があります。
getView() メソッドに送信される最初の int 値、つまり int arg0 は、クリックされた配列の要素の ID ですか? リストビュー onClickListner から ID を割り当てる必要がありますか?
public View getView(int arg0, View arg1, ViewGroup arg2) {
}
次の 2 つのオーバーライドされたメソッドも実装する必要があると思います。
@Override
public Object getItem(int arg0) {
return null;
}
@Override
public long getItemId(int arg0) {
return 0;
}
現在、私のアプリでは配列の要素 0 (最初の要素) にしかアクセスできないため、リストビューのどの項目がクリックされても、他の 19 要素は無視されると思います。
private List<GeoName> names = new ArrayList<GeoName>();
@Override
public Object getItem(int arg0) {
return null;
}
@Override
public long getItemId(int arg0) {
return 0;
}
@Override
public View getView(int arg0, View arg1, ViewGroup arg2) {
GeoName location = this.names.get(arg0);
Location l = location.getGeometry().getLocation();
Latt = l.getLat();
Longg = l.getLng();
上記のコードから、name.get() メソッドが呼び出されたときに、「arg0」にエレメント ID 値が自動的に割り当てられるべきでしょうか?