如何在回收者视图中收听触摸事件?我已经为视图持有者实现了click listener,但它可以在整个视图上工作。我在每个视图支架中都有一个图像视图,当用户单击图像视图时,我需要执行一个操作。
public class ViewHolder_Custom extends RecyclerView.ViewHolder implements View.OnClickListener {
private TextView name;
private ImageView image_path;
private static ClickListener clickListener_custom;
public ViewHolder_Custom(View itemView) {
super(itemView);
name = (TextView) itemView.findViewById(R.id.name);
image_path = (ImageView) itemView.findViewById(R.id.image);
itemView.setOnClickListener(this);
}
public TextView getName() {
return name;
}
@Override
public void onClick(View view) {
if (clickListener_custom != null) {
clickListener_custom.itemClick(view, getAdapterPosition());
}
}
public ImageView getImage_path() {
return image_path;
}
public interface ClickListener {
void itemClick(View v, int position);
}
public static void setClickListener(ClickListener clickListener) {
ViewHolder_Custom.clickListener_custom = clickListener;
}
}
当前视图持有者代码。
由于您希望在单击项目中的每个图像视图时执行操作,因此您可以为每个查看者的图像视图添加onClickListener。根据执行触摸监听器的顺序,您的Imageview的监听器将在监听器添加到viewholder.view.之前执行
我有一个回收器视图有10个项目。我滚动到页面底部,现在我正尝试为第一个项目调用。当我调用它时,它不会触发第一个项目的。因此,简而言之,我的问题是,当我调用时,其位置没有显示在屏幕上,它是否触发了?。这是我的适配器代码
我很乐意为我的开源库启用触摸反馈。 我创建了一个和一个。包含具有不同操作的不同区域。现在,如果用户点击卡上的任何地方,我很想触发连锁反应,但我无法实现这种行为。 这是我的列表,你也可以在GitHub上找到:https://github.com/mikepenz/AboutLibraries/blob/master/library/src/main/res/layout/listitem_opens
在其他回收器视图中有一个回收器视图。两者都需要垂直滚动。外部回收器视图滚动正常,但内部回收器视图滚动不正常。 这是代码: ViewAdapter如下: 我尝试了以下两种回收商观点,但都无法解决问题 也尝试了这个:
我在滚动视图中有一个回收器视图。我想禁用回收器视图滚动,以便它监听它的父布局,一个ScrollView!
如果用户点击一个,我希望它做一些事情,也为两个和三个。我如何实现这一点?
我正面临一个奇怪的错误,其中recyclerview只显示了一个项目。下面是我的recyclerview适配器的代码: 我已经在其他应用程序中使用了这段代码,它的工作非常完美。我已经检查了聊天数据,这也是完美的。 这里是指向git repo布局文件的链接:布局文件