android - 如何处理抽屉导航上复选框的 ListView 点击

标签 android listview navigation-drawer

我正在开发一个抽屉导航从右向左打开的应用程序。在这个抽屉导航中,我需要处理一个项目的过滤器。

我正在用复选框和文本填充 ListView。ListView 中填充了复选框和过滤器文本,但在我的应用程序中我无法处理点击事件。

例如。当用户选择多个复选框时,应触发点击事件,我的应用程序应该能够捕获这些复选框的值。但是当我点击选中的时,没有处理点击事件。 但是当我用文本和图像填充 ListView 时,我能够处理点击事件。

作为引用,我的抽屉布局类似于下图:
enter image description here

在我的 NavigationDrawerFragment 类中,我按如下方式处理点击事件:

private class FilterDrawerItemClickListener implements
            ListView.OnItemClickListener {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position,
                                long id) {
            selectItem(position);
        }
    }

private void selectItem(int position) {
        currentSelectedPosition = position;
        if (drawerListView != null) {
            drawerListView.setItemChecked(position, true);
        }
        if (drawerLayout != null ) {
            drawerLayout.closeDrawer(fragmentContainerView);
        }
        // Fire the event off to the bus which.
        // bus.post(new NavItemSelectedEvent(position));
        bus.post(new FilterNavItemSelectedEvent(position));
    }

当我从 ListView 中删除复选框时,它能够处理,但是当我将复选框放入 ListView 时,我无法处理点击事件。

我尝试了很多方法,但还是一无所知。我认为这是抽屉导航的常见场景之一。

提前致谢!

最佳答案

根据您的意见,如果抽屉导航不为复选框提供此类支持,您可以使用两个自定义 imageview/Button 表示已选中和未选中的复选框。另一种方法,您可以尝试使用类似于抽屉导航的 ListView 创建自定义动画 Activity 。

关于android - 如何处理抽屉导航上复选框的 ListView 点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26481605/

相关文章:

android - 无法在 Android Studio 中调试应用程序

android - 强制关闭正则表达式 !match

android - 如何从抽屉导航中打开一个新 fragment ?

Android - 样式搜索栏

android - HTC Sense/EVO 在书写时不尊重 EditText 颜色

asp.net - 如何解析 ASP ListView 模板中的相对路径?

android - 一个 ListView 中的两个适配器

android - 在 AsyncTask 类中设置 ListView 时出现问题

java - 根据 if else 语句更改字符串数组项

android - 像 Android 5.0 一样在 ActionBar/StatusBar 顶部的抽屉导航而不使用 AppCompact/ToolBar