本文实例讲述了AndroID编程实现输入框动态自动提示功能。分享给大家供大家参考,具体如下:
关于autoCompleteTextVIEw
的使用,我想大家并不陌生,对其设定上Adapter后系统便能自己识别与匹配了。近期 一个项目中,需要做到匹配通迅录中的电话号码和联系人,由于通迅录中数据量大,所以把所有的数据在自己提示之前就查询出来并加入到 autoCompleteTextVIEw中是不现实的,所以我们可以使用cursor
来动态加载autoCompleteTextVIEw的数据,从而 实现时时搜索提示,要实现动态加载,只用重写一个类继承于CursorAdapter
,然后设定在autoCompleteTextVIEw上就行了。
autoCompleteTextVIEw editNumber = (autoCompleteTextVIEw)findVIEwByID(R.ID.edit_number);Cursor cursor = getContentResolver()(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,null,null);Contactlistadapter listadapter = new Contactlistadapter(this,cursor);editNumber.setAdapter(listadapter);
Contactlistadapter.java中的核心代码如下:
重写newVIEw方法
public VIEw newVIEw(Context context,Cursor cursor,VIEwGroup parent) { final LayoutInflater inflater = LayoutInflater.from(context); final VIEw vIEw = (VIEw)inflater.inflate( R.layout.auto_complete,parent,false); TextVIEw txtname = (TextVIEw)vIEw.findVIEwByID(R.ID.txt_name); txtname.setText(cursor.getString(0)); TextVIEw txtNumber = (TextVIEw)vIEw.findVIEwByID(R.ID.txt_number); txtNumber.setText(cursor.getString(1)); TextVIEw txtType = (TextVIEw)vIEw.findVIEwByID(R.ID.txt_type); String[] arrType = SmsConstant.ARR_CONTACTS_TYPE; if(cursor.getint(2) > 3) { txtType.setText(arrType[0]); } else { txtType.setText(arrType[cursor.getint(2)]); } return vIEw;}
重写bindVIEw方法,
public voID bindVIEw(VIEw vIEw,Context context,Cursor cursor) { TextVIEw txtname = (TextVIEw)vIEw.findVIEwByID(R.ID.txt_name); txtname.setText(cursor.getString(0)); TextVIEw txtNumber = (TextVIEw)vIEw.findVIEwByID(R.ID.txt_number); txtNumber.setText(cursor.getString(1)); TextVIEw txtType = (TextVIEw)vIEw.findVIEwByID(R.ID.txt_type); String[] arrType = SmsConstant.ARR_CONTACTS_TYPE; if(cursor.getint(2) > 3) { txtType.setText(arrType[0]); } else { txtType.setText(arrType[cursor.getint(2)]); }}
点击d出的ListvIEw列表后的返回值:
public String convertToString(Cursor cursor) {}
执行搜索的SQL语句,返回一个Cursor加载到d出的ListvIEw上
public Cursor runqueryOnBackgroundThread(CharSequence constraint) {}
在此所返回的Cursor结果,会全部显示在d出提示上,无需再次过虑。
更多关于AndroID相关内容感兴趣的读者可查看本站专题:《Android视图View技巧总结》、《Android布局layout技巧总结》、《Android图形与图像处理技巧总结》、《Android开发入门与进阶教程》、《Android调试技巧与常见问题解决方法汇总》、《Android多媒体 *** 作技巧汇总(音频,视频,录音等)》、《Android基本组件用法总结》及《Android控件用法总结》
希望本文所述对大家AndroID程序设计有所帮助。
总结以上是内存溢出为你收集整理的Android编程实现输入框动态自动提示功能全部内容,希望文章能够帮你解决Android编程实现输入框动态自动提示功能所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)