Android实现Filterable通过输入文本框实现联系人自动筛选

本文介绍了如何在Android中通过实现Filterable接口,结合AutoCompleteTextView控件,实现在输入文本框中输入内容时自动筛选联系人的功能。核心在于重写BaseAdapter并实现Filterable的两个关键方法,简单易懂的代码示例帮助理解这一功能的实现。
摘要由CSDN通过智能技术生成

 

相信大家一定在见过手机通讯录的一个情景就是使用在选人的时候输入文本框里的数据就能自动筛选。今天也受一网友邀请,所以还是整理了一下这块的知识点,现在与大家共享一下,有什么疑惑的可以与我交流。实现的效果如下图。


其实实现这样的效果相信大家一定对另外一个控件不陌生那就AutoCompleteTextview,看一下这个控件的源代码也许就能找到你需要的答案。这里的核心就是一个Filterable。至于Filterable的介绍和做什么用的大家就可以自行上网查找相关知识,其中有两个重要的方法

方法名

作用

protected FilterResults performFiltering(CharSequence prefix)

在这个方法里执行过滤方法

protected void publishResults(CharSequence constraint,

            FilterResults results)

在这个方法里发布筛选过后得到的数据同时更新Adapter更新

 

 

理解这点知识那么就看核心代码吧,这里就是重写BaseAdapter然后实现Filter

  • 8
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 20
    评论
评论 20
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值