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的更多相关文章
- 【Android API】Android 4.1 API官方文档详解
原文:http://android.eoe.cn/topic/summary 翻译:[eoeAndroid原创团队]kris.流风而逝.贼寇在何方.snowxwyo.lsy4833406 更新日期:2 ...
- Android API之android.content.BroadcastReceiver
android.content.BroadcastReceiver Base class for code that will receive intents sent by sendBroadcas ...
- Android API之android.provider.ContactsContract.RawContacts
android.provider.ContactsContract.RawContacts Constants for the raw contacts table, which contains o ...
- Android API之android.provider.ContactsContract
android.provider.ContactsContract ContactsContract是联系人provider和app的contract.定义了已支持的URL和column.取代了之前的 ...
- Android API之android.os.Parcelable
android.os.Parcelable Interface for classes whose instances can be written to and restored from a Pa ...
- Android API之android.content.AsyncQueryHandler
android.content.AsyncQueryHandler A helper class to help make handling asynchronous ContentResolver ...
- Android API之android.provider.ContactsContract.Data
android.provider.ContactsContract.Data Constants for the data table, which contains data points tied ...
- Android API之android.provider.ContactsContract.Contacts
android.provider.ContactsContract.Contacts 对应contacts数据表.RawContacts的一个聚合(aggregate)代表同一个人.每个人在数据表co ...
- Android API之android.view.View.MeasureSpec
android.view.View.MeasureSpec MeasureSpec是View的内部类 public static class MeasureSpec MeasureSpec封装从par ...
随机推荐
- DTO vs. Assembly(转载)
DTO vs. Assembly We probably need to make a strong statement about data transfer objects. Do we like ...
- unity 质量设置 Quality Settings
Unity allows you to set the level of graphical quality it will attempt to render. Generally speaking ...
- Spring4.0+quartz2.2.1+memcahce多台nginx实现均衡
1.每台nginx都有公网地址,在域名处设置同个域名多个指向,最简单实现轮洵.但故障切负会慢一点.2.一台公网nginx通过upstream功能,轮洵.ip.url多方式分发到内网多台nginx.但公 ...
- DELIMITER关键词作用 替换结束符号
注意:“DELIMITER //”语句的作用是将MYSQL的结束符设置为//,因为MYSQL默认的语句结束符为分号;,为了避免与存储过程 中SQL语句结束符相冲突,需要使用DELIMITER 改变存储 ...
- kafka深入研究(六)
Kafka Producer端封装自定义消息 Kafka.network包源码解读 Kafka Consumer端的一些解惑 Kafka producer使用注意 kafka0.8的一些变动,先收藏, ...
- 如何判断某版本的.NET Framework是否安装
1..NET Framework .NET Framework2.0 键:[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\N ...
- coursera课程Text Retrieval and Search Engines之Week 2 Overview
Week 2 OverviewHelp Center Week 2 On this page: Instructional Activities Time Goals and Objectives K ...
- 3D几何图形生成的DEMO
3D几何图形生成的DEMO 可以生成以下几种图形: [1] 平面(Plane)图形的生成算法 [2] 立方体(Box)图形的生成算法 [3] 球(Sphere)图形的生成算法 [4] 圆锥(Cone) ...
- 同一页面的两个Iframe,其中一个iframe获取另一个iframe内的iframe中的元素值
公共父页面(主页面): <%@ page language="java" import="java.util.*" pageEncoding=" ...
- Java--解压缩zip包
Test.java import java.io.IOException; public class Test { public static void main(String[] args) thr ...