Android 启动一个请求runQueryOnBackgroundThread的筛选器

Android 启动一个请求runQueryOnBackgroundThread的筛选器,android,autocomplete,filtering,android-cursoradapter,Android,Autocomplete,Filtering,Android Cursoradapter,如果我为自动完成实现过滤,并覆盖runQueryOnBackgroundThread()方法,将启动一个后台线程,它将为我获取一个光标 该光标将被设置为myCursorAdapter,但为了过滤自动完成的条目,我还应该做些什么 我应该设置一个过滤器吗 这是我的代码: public Cursor runQueryOnBackgroundThread(CharSequence constraint) { if (getFilterQueryProvider() != null) {

如果我为
自动完成
实现过滤,并覆盖
runQueryOnBackgroundThread()
方法,将启动一个后台线程,它将为我获取一个光标

该光标将被设置为my
CursorAdapter
,但为了过滤
自动完成
的条目,我还应该做些什么

我应该设置一个过滤器吗

这是我的代码:

public Cursor runQueryOnBackgroundThread(CharSequence constraint) {
    if (getFilterQueryProvider() != null) {
        return getFilterQueryProvider().runQuery(constraint);
    }

    String filter="";

    if(constraint==null)
        filter="";
    else 
        filter=constraint.toString();

    Cursor cursor=db.getCursor(filter);

    return cursor;
}
  • 实现runQueryOnBackgroundThread的类必须实现filterable。假设这个类叫做A
  • 在textview上设置侦听器,以便在发生更改时运行.getFilter().filter,其中“a”是a的实例,“s”是要用作runQueryOnBackgroundThread参数的文本