Android API之android.widget.Filterable

Posted gccbuaa

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android API之android.widget.Filterable相关的知识,希望对你有一定的参考价值。

android.widget.Filterable

定义了一种可过滤的行为。Filterable接口通常有android.widget.Adapter来实现。接口Filterable中有个抽象方法getFilter()须要实现。

Filter android.widget.Filterable.getFilter()

返回一个filter对象。用来过滤出符合某种pattern的数据。getFilter()方法通常在android.widget.Adapter类中实现。

 

android.widget.Filter
一般是实现Filterable接口来创建Filter对象。方法filter(CharSequence)、filter(CharSequence, FilterListener)实现过滤操作是异步进行的。将一个过滤请求放到请求队列中。在稍候处理。取消上次没有运行的过滤请求。

创建一个Filter对象,须要至少实现两个抽象方法:

protected FilterResults performFiltering(CharSequence constraint)

protected void publishResults(CharSequence constraint, FilterResults results)

方法一:
protected FilterResults performFiltering(CharSequence constraint)

在worker线程中调用。根据constraint来过滤。返回结果,一个FilterResults对象,将通过方法publishResults(Charsequence, FilterResults)在UI线程中发表。

当參数(constraint)为null。恢复为初始的数据。

方法二:

protected void publishResults(CharSequence constraint, FilterResults results)

在UI线程中调用。发表过滤操作的结果显示到UI中。



以上是关于Android API之android.widget.Filterable的主要内容,如果未能解决你的问题,请参考以下文章

android6.0源码分析之Camera API2.0下的video流程分析

android6.0源码分析之Camera API2.0下的video流程分析

Android之动态申请权限(API23以上需求)

Android API指南之应用程序窗口小部件主机

Camera API2.0的应用

Camera API2.0的应用