【发布时间】:2018-04-12 11:30:34
【问题描述】:
我在回收站视图中工作,其中有递增和递减按钮。我的条件是最大我不能添加 10 和最小 0。当我在回收器视图中单击第一行项目的增量按钮时,它正在添加 1,但是当我在回收器视图中单击第二行项目时它首先影响列表项也是如此。假设 item1 变为 1 plus。
当我进行任何递增和递减时,它不应该影响 RecyclerView 中的其他行项。
int counter = 0;
@Override
public void onBindViewHolder(final RecyclerView.ViewHolder holder,final int position) {
final ParseObject parseObject = arrayList.get(position);
boolean like = true, dislike = true;
if (holder instanceof MemberViewHolder) {
if (arrayList.size() > 0) {
((MemberViewHolder) holder).txtIncrement.setOnClickListener(new TextView.OnClickListener() {
@Override
public void onClick(View view) {
counter += 1;
((MemberViewHolder) holder).txtCounter.setText(counter+"");
}
});
((MemberViewHolder) holder).txtDecrement.setOnClickListener(new TextView.OnClickListener() {
@Override
public void onClick(View view) {
if(counter == 0){
}else{
counter -= 1;
((MemberViewHolder) holder).txtCounter.setText(counter+"");
}
}
});
}
}
当从第 1 项递减时,它也在递减第 2 行中的值。我想保留每个项目的值。
【问题讨论】:
-
发布您的 onBindViewHolder 代码
-
维护一个计数器数组,大小等于您的数据集大小,在 decrement 和 increment 时更新该索引计数,参考该数组以进行 UI 更新
-
@RahulChaudhary 感谢您的回复。我正在更新我的完整 onBindViewHolder。请在上面检查。
-
@VinaySasalatti 感谢您的回复。你能按照你的解释给我一个代码sn-p吗?我已经编辑了我上面的 onBindViewHolder,你也可以检查一下。
-
你有没有一个recyclerview_object列表来分别处理每个项目
标签: android android-recyclerview increment