我有三个autoCompleteTextView
框home
,work
,other
。
因此,在家庭自动填充框中,我从服务器获取数据并选择一个项目,并将该项目存储到home_latlong
字符串。同样,我必须从其他自动完成工作中获取值,我将该值存储在另一个名为home_latlong
的字符串中。下面的代码显示了onItemClick
覆盖函数,其中我将存储home_latlong
或work_latlong
。
`
ontemClick(AdapterView<?> adapterView, View view,
int position, long id) {
System.out.println("POSITION ="+position);
for (int i = 0; i < latlong.size(); i++) {
if(i==position){
home_latlong=latlong.get(i);
System.out.println("ARRAY"+latlong.get(i));
}
}
}`
问题是,当我存储home_latlong
以及何时存储work_latlong
时,我无法区分。我尝试使用autocompletetextview
的id,但它对此功能没有帮助。
答案 0 :(得分:1)
我通过使用匿名内部类来解决它,
actv1 = (AutoCompleteTextView) findViewById(R.id.autoCompleteTextView1);
actv1 .setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View v, int position,
long id) {
// TODO Auto-generated method stub
for (int i = 0; i < latlong.size(); i++) {
if (i == position) {
home_latlong = latlong.get(i);
System.out.println("ARRAY" + latlong.get(i));
}
}
}
});
同样对于work_latlong
我有另一个匿名的内部类,所以我可以得到我点击过的自动完成视图。
答案 1 :(得分:0)
查看AdapterView.OnItemClickListener
的文档:
public abstract void onItemClick (AdapterView<?> parent, View view, int position, long id)
<强>参数强>
- parent:发生点击的AdapterView。
- view:已点击的AdapterView中的视图(这将是适配器提供的视图)
您需要使用 first 参数(AdapterView)来识别AutocompleteTextView
。