【发布时间】:2016-06-08 09:46:51
【问题描述】:
在下面的代码中,每次调用'setlisteners'方法,位置值不应该改变吗? 只有一种方法'setlisteners'在其中传递参数位置,但是在日志中,我看到每当我的按钮上发生单击事件时,它都会显示正确的位置。位置不应该覆盖自身并显示不正确的位置,因为点击事件可能随时发生,到那时位置的值会发生变化?
假设已经绑定了 5 个视图,我点击了第一个 itemview,那么它不应该向我显示最后一个职位 绑定itemview?
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
setListeners(holder,position);
}
private void setListeners(ViewHolder holder, final int position) {
holder.updownarrow.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.e("ddfg",""+position);
}
});
holder.leftlayout.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
}
position 将保留最后一个绑定在 onBindViewHolder 中的持有者的位置,因为当我单击它时,我的 View 不会调用 onBindViewHolder,所以不应将 position 保留最后绑定的位置,并且在任何视图获取时只显示一个位置点击了吗?
【问题讨论】:
标签: java android methods android-recyclerview android-adapter