0
ListView
からオブジェクトを取得したいと思います。私はcsv
ファイルから私のデータを入れました。アンドロイドのリストビューからオブジェクトを取得
私は2つの列と100の行を持っています。最初の列はName、2番目はnumberです。 行をクリックした後に番号を取得します。
だから私はonCreate
を持っている:
listView.setClickable(true);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Button btn2 = (Button) findViewById(R.id.button3);
btn2.setEnabled(true);
Object listItem = listView.getItemAtPosition(position);
String item = (listView.getItemAtPosition(position).toString());
btn2.setText(item);
}
});
を、その後、私は行(第1、第2の列=同じスコア)をクリックしたとき、私のButton
テキストは[LJAVA.LANG.STRING;@42791450
を示し、すべての行は、他の番号を持っています。
EDIT:
listView = (ListView) findViewById(R.id.list_view2);
itemArrayAdapter = new ItemArrayAdapter(getApplicationContext(), R.layout.single_list_item);
Parcelable state = listView.onSaveInstanceState();
listView.setAdapter(itemArrayAdapter);
listView.onRestoreInstanceState(state);
InputStream inputStream = getResources().openRawResource(R.raw.manager_number);
CSVReader csv = new CSVReader(inputStream);
List<String[]> scoreList = csv.read();
for (String[] scoreData : scoreList) {
itemArrayAdapter.add(scoreData);
}
オブジェクトの識別子ではなく、オブジェクトの対応する番号が表示されています。 Objectとそれに対応するセッターとゲッターを実装し、必要な値を取得する必要があります。例:btn2.setText(listView.getItemAtPosition(position).getNumber()); – Ricardo
アダプタ初期化コードを表示します。 –