@Override
public YourViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View partnerTypeView = LayoutInflater.from(parent.getContext()).inflate(R.layout.recycler_item, parent, false);
return new YourViewHolder(partnerTypeView);
}
在其中添加以下行:
@Override
public YourViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View partnerTypeView = LayoutInflater.from(parent.getContext()).inflate(R.layout.recycler_item, parent, false);
partnerTypeView.setClickable(false);//This is line that make row non clickable
return new YourViewHolder(partnerTypeView);
}
5条答案
按热度按时间brccelvz1#
第一个简单选项
但实际上使用系统时间会很糟糕:
但是对于干净的编程,我建议这样做:
"有点复杂,但同样简单"
在你的Adapter中引入一个布尔变量,请注意viewHolder()和onBindViewHolder()方法:
并根据需要使用myadapter.setClickable(状态)
就像这样:
或者在onResume()中:
a64a0gku2#
您可以通过覆盖下面的方法并返回true来防止对viewGroup子项的触摸;
c3frrgcw3#
(false);在您不想单击的视图上
jum4pzuy4#
在recyclerView适配器中,您将使用如下所示的方法:
在其中添加以下行:
如果此方法不起作用,请在下面进行注解
0yg35tkg5#
让列表项从适配器代码中的父项获取
enabled
参数:然后,您所要做的就是设置列表本身的值,并再次设置适配器: