我正在尝试为RecyclerView
实施多重选择。我知道ListView
可以很容易地实现它。我尝试了RecyclerView
MultiSelect
问题是我使用Fragment
并且在Fragment
内部有适配器和内部适配器,有ViewHolder
类,其中所有代码都是为选择视图而编写的。
MultiSelector mMultiSelector = new MultiSelector();
public class ViewHolder extends SwappingHolder
implements View.OnLongClickListener {
public final View mView;
public ViewHolder(View view) {
super(view, mMultiSelector);
mView = view;
mView.setLongClickable(true);
}
@Override
public boolean onLongClick(View v) {
if (!mMultiSelector.isSelectable()) {
mMultiSelector.setSelectable(true);
mMultiSelector.setSelected(ViewHolder.this, true);
return true;
}
return false;
}
}
但它不起作用。有没有什么方法可以像RecyclerView
一样为ListView
实现Muti Select。
答案 0 :(得分:0)
使用RecyclerView
并不像listView
那样简单。
试试这个: it is a detailed tutorial for multi select mode with a recyclerView。 我从那里学到了它非常有用,它包括代码和ilustrations
祝你好运答案 1 :(得分:0)
试试此代码
if (!mMultiSelector.isSelectable()) {
((AppCompatActivity) getActivity()).startSupportActionMode(mActionModeCallback); // (2)
mMultiSelector.setSelectable(true);
mMultiSelector.setSelected(MyViewHolder.this, true);
return true;
}
return false;
另请查看以下链接
https://bignerdranch.github.io/recyclerview-multiselect/ http://www.grokkingandroid.com/statelistdrawables-for-recyclerview-selection/