我在項目點擊AutoCompleteTextView時遇到了麻煩。用我的代碼下面,我沒有得到點擊項目的ID在SQLite數據庫中。假設我點擊了自動完成下拉菜單中顯示的第二項。我從ID號爲2的數據庫中獲取值,而不是數據庫中ID爲不同的選定項的值。我確信我的onItemClick實現是錯誤的。我希望somone能幫我弄明白。很長時間以來,我一直在爲此感到煩惱。OnItemClick到AutoCompleteTextView
我的代碼:
SearchTrainee = (AutoCompleteTextView) findViewById(R.id.search);
trainees = new ArrayList<HashMap<String, String>>();
trainees = DatabaseHelper.getInstance().getStoredTrainees();
String str[] = new String[trainees.size()];
for (int i = 0; i < trainees.size(); i++) {
str[i] = trainees.get(i).get("display");
}
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
R.layout.search_autocomplete, str);
SearchTrainee.setAdapter(adapter);
SearchTrainee.setOnItemClickListener(this);
}
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
System.out.println("Last name: " + trainees.get(arg2).get("last_name"));
//currentTrainee.setFirstname(trainees.get(arg2).get("first_name"));
// currentTrainee.setCompany(trainees.get(arg2).get("company"));
// System.out.println(currentTrainee.getFirstname());
}
不使用ArrayAdapter,使用SimpleCursorAdapter代替 – pskink
@pskink任何具體的原因花花公子? – bShah
,因爲如你注意到你丟失物品ID – pskink