继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

输入内容的自动匹配(AutoCompleteTextView)的点击事件遇到的问题

红颜莎娜
关注TA
已关注
手记 125
粉丝 17
获赞 65

如果 我们点击AutoCompleTextView下拉列表会发现在setOnItemClickListenr方法中我们触发的position在我们的定义的字符创数组或集合的位置是不同的,这时候要是想要获取列表中的数据并对它处理的话,我们可以使用临时变量来处理。

final List<String>siteList=new ArrayList<String>();

List<Destination>des=mDbExecutor.findAll(Destination.class);

for(Destination d:des){

                        //des集合中存放着数据  xxxx----xxxx  如果我们获取后半部分需要使用临时变量

siteList.add(d.getSiteCode()+"----"+d.getDestinationName());

}

 ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,siteList);

              beforeNoEdit.setAdapter(adapter);

         

 beforeNoEdit.setOnItemClickListener(new OnItemClickListener() {

@Override

public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,

long arg3) {

//Toast.makeText(FajianActivity.this, beforeNoEdit.getText().toString(), 0).show();

                              //String names[]=des.get(arg2).split("----"); 这样获取的不是我们点击的内容  这时候我们可以

                              //通过下面的方法实现

 String names[]=beforeNoEdit.getText().toString().split("----");

 beforeNoEdit.setText(names[0]);

                               //获取xxx----xxx后半部分的内容显示在控件上

 etPreSite.setText(names[1]);

}

});

原文链接:http://www.apkbus.com/blog-813041-62932.html

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP