如何处理导航抽屉上的复选框列表视图单击

时间:2014-10-21 07:56:46

标签: android listview navigation-drawer

我正在开发一个应用程序,其中我的导航抽屉从右到左打开。在这个导航抽屉里,我需要处理物品的过滤器。

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

对于前。当用户选择多个复选框时,应该触发点击事件,我的应用程序应该能够捕获那些选中的复选框值。但是,当我点击检查时,没有点击事件被处理。 但是当我用文本和图像给ListView充气时,我能够处理点击事件。

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

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

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时,我无法处理点击事件。

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

提前Thanx!

1 个答案:

答案 0 :(得分:0)

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