android - 使用 CursorLoader 和 Custom CursorAdapter 过滤 ListView

标签 android android-listview android-cursoradapter android-loadermanager android-cursorloader

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

我刚开始Android编程不久,所以我还处于边学边写的阶段。

我四处搜索,试图获得一些关于如何进行的线索。阅读和尝试后我仍然卡住了。

我的工作代码目前包括

  • 光标加载器
  • 一个自定义 ResourceCursorAdapter,有助于填充我在 ListView 上的条目

问题

  1. 为我的 ListView 筛选条目的“正确”方法是什么?我看到有关 Filter/Filterable 界面的帖子,但它似乎不适用于我当前的设置?我是否在自定义 CursorAdapter 中执行过滤?

  2. 我应该如何在执行过滤后刷新我的 ListView?我是调用 getLoaderManager().restartLoader(0, null, this) 还是 adapter.notifyDataSetChanged()?

提前致谢。

最佳答案

使用getLoaderManager().restartLoader(LOADER_ID, null, 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, null, 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 - 使用 CursorLoader 和 Custom CursorAdapter 过滤 ListView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19095790/

相关文章:

android - 是否可以在使用 Hyper-V 托管的 guest 操作系统上使用 HAXM?

android - 如何将 GridView 的选择模式设置为多个?

Android Listview 在 Keyboardview 之上

android - 我如何在 Android API 级别 10 上实现带有 ListView 的 SlidingDrawer?

android - ListView 中的 CursorAdapter

java - Android:单击按钮时切换相机

java - 无限扩展 Rx Singles zip

android - 使用自定义适配器从 ListView 中搜索项目

android - 光标和适配器

android - 带有 CursorAdapter 的 ListView