如何在Android中使用RecyclerView应用setItemChecked(position,true)?

Cri*_*llo 8 android android-listview material-design android-recyclerview

我正在开发一个材料设计导航抽屉.我在其中创建了一个新类RecyclerItemClickListener implements RecyclerView.OnItemTouchListener来处理用户对列表项的点击.我在MainActivity类' onCreate方法中以这种方式使用类:

mRecyclerView.addOnItemTouchListener(
            new RecyclerItemClickListener(this, mRecyclerView, new RecyclerItemClickListener.OnItemClickListener() {
                @Override
                public void onItemClick(View view, int position) {// do whatever
                    if(position!=0){
                        setItemChecked(position, true);
                        setSelectable(true);
                        boolean isSelected = view.isSelected();
                        view.setActivated(isSelected);

                        selectItem(position);
                    }
                }
                @Override
                public void onItemLongClick(View view, int position){
                    // ...
                }
            })
    );
Run Code Online (Sandbox Code Playgroud)

我从这篇博文中找到了这个代码:RecyclerView第2部分, 但它没有完成任务,对我而言,根本不清楚我应该如何使它工作.我也检查了这个看似简单的解决方案:Innodroid - 在RecyclerView中跟踪所选项目(也在这个答案中引用)但是我不清楚我应该如何将我的MyAdapter班级派生到TrackSelectionAdapter班级.

突出列表项的最佳方法是什么?我被卡住了.

请帮忙.

Dav*_*eas 8

我想,我已经找到了关于如何使用我们需要的所有函数的RecyclerView以及没有库(单选+多选,高亮,涟漪,多选中的单击和删除等)的最佳教程.从第一眼看起来似乎很好地解释了.

这是 - > http://enoent.fr/blog/2015/01/18/recyclerview-basics/

[编辑]我终于找到了尝试它的时候,我甚至创建了自己的更灵活,每个人都可以享受我的改进:https://github.com/davideas/FlexibleAdapter.在这个链接中,我也解释了它是如何工作的.请将其添加到您的项目中.