android – 使用CursorLoader和Custom CursorAdapter过滤ListView

我目前正在做一个项目,涉及根据我当前的位置显示附近的位置列表.

我不久前刚开始使用Android编程,所以在编码阶段我还在学习.

搜索了所有试图得到一些关于如何继续的线索.阅读和尝试后我仍然被困住了.

我的工作代码目前包括

> CursorLoader
>自定义ResourceCursorAdapter,帮助填充ListView上的条目

问题

>过滤ListView条目的“正确”方法是什么?我在Filter / Filterable界面上看过帖子,但它似乎不适用于我当前的设置?我是否在Custom CursorAdapter中执行过滤?
>执行过滤后,如何刷新ListView?我是否调用getLoaderManager().restartLoader(0,null,this)或adapter.notifyDataSetChanged()?

提前致谢.

解决方法

使用getLoaderManager().restartLoader(LOADER_ID,MainActivity.this);召回onCreateLoader.

Android developer site example.

private String filter;
    public boolean onoptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
        case R.id.action_filter :
            filter = "COLUMN_NAME = value";
            getLoaderManager().restartLoader(LOADER_ID,MainActivity.this);           
            break;          
        default:
            break;
        }
        return super.onoptionsItemSelected(item);
    }

    @Override
    public android.content.Loader<Cursor> onCreateLoader(int id,Bundle args) {

        return new CursorLoader(
                MainActivity.this,// Parent activity context
                SomeContentProvider.CONTENT_URI,// Table to query
                projection,// Projection to return
                filter,// No selection clause
                null,// No selection arguments
                null             // Default sort order
                );

    }

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...