- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 Android Material 设计的新手,想使用回收 View 而不是 ListView ,但在实现 OnClickListener 时遇到问题。我发现 RecyclerView.Adapter 与 ListView.Adapter 有点不同。首先,我在 onBindViewHolder
中实现了 OnClick 监听器,但它返回了错误的项目编号,并在删除一些内容后导致越界。
@Override
public void onBindViewHolder(PersonViewHolder personViewHolder, int i) {
final int index = i ;
personViewHolder.cv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
... items.get(index).gettext();
}
所以我发现我应该在我的 ViewHolder 类中实现 OnClikListener 作为 link .
但在这种情况下永远不要插入 OnClick。
public static class PersonViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
@Override
public void onClick(View v) {
Log.i("log","position="+getAdapterPosition());
}
}
public CardViewAdapter(List<MessageTO> persons) {
this.items = persons;
}
@Override
public void onAttachedToRecyclerView(RecyclerView recyclerView) {
super.onAttachedToRecyclerView(recyclerView);
}
@Override
public PersonViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
View v = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.deposite_card_view, viewGroup, false);
PersonViewHolder pvh = new PersonViewHolder(v);
return pvh;
}
@Override
public void onBindViewHolder(PersonViewHolder personViewHolder, int i) {
...
}
我还发现我应该在 onBindViewHolder
中全部初始化项目值,对吗?我很困惑。
最佳答案
首先您需要设置onclicklistener,如下所示。那么它应该可以工作。
公共(public)静态类 PersonViewHolder 扩展 RecyclerView.ViewHolder 实现 View.OnClickListener {
public ViewHolder(View itemView) {
super(itemView);
.
.
.
itemView.setOnClickListener(this);
}
@Override
public void onClick(View v) {
Log.i("log","position="+getAdapterPosition());
}
关于android - 回收项目点击问题,永远不会进入功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34494527/
menu Home Events Technical Schedule
我试图阻止触发默认 anchor 链接和 onclick 事件。 这是 HTML 代码: Google 我正在尝试使用以下 jQuery 代码阻止任何重定向的发生: $("#mylink").cli
我想在单击父 div 上的任意位置时切换我的 div,除非单击 anchor 元素。因此,例如,如果我单击示例中的第一个文本,我希望它切换,但在我的示例中的第二个文本上,我不希望它切换。 JSFidd
我在通过 jQuery 伪造 anchor 点击时遇到问题:为什么我的thickbox在我第一次点击输入按钮时出现,但第二次或第三次却没有出现? 这是我的代码: Link 当我直接点击链接时,它总是
我已经从 Mootools 切换到 jQuery,因为我认为它有更好的支持。我有这样的 HTML: Opcje Opcje Opcje Opcje Opcje Opcje Opcje JS
我是一名优秀的程序员,十分优秀!