假设我有这个数据库表:
Name: A,B,C,D
Id: 1,2,3,4
Phone no: 991,928,902,397
我正在使用自动填充文本视图来显示名称。自动填充代码在此处:
final ArrayList<String> s1 = new ArrayList<String>();
for (StudentInfo cn : studentInfo) {
s1.add(cn.getName());
}
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line,s1);
a1.setThreshold(1);
a1.setAdapter(adapter);
这里a1 is the autocomplete textview
。现在,如果我从自动完成文本视图中选择一个名称,假设B.然后,我的ID和电话号码是2和902,我想显示为2文本视图。实际上我想要显示两个textview t1,t2中的相对id和电话号码。
a1.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
}
});
答案 0 :(得分:0)
试试这个
使用HashMap将姓名与学生详细信息映射
HashMap<String, StudentInfo> studentdetails=new HashMap<String,StudentInfo>();
for (StudentInfo cn : studentInfo) {
s1.add(cn.getName());
studentdetails.put(cn.getName(),cn);
}
它onItemClick获取像这样的值
a1.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
String studentname=arg0.getItemAtPosition(arg2);
StudentInfo student=studentdetails.get(studentname);
// get values from studen record
String id=student.getId();
String phoneNumber=student.getPhone();
}
});