如何在android中的RecyclerView行中更改ImageButton(如在twitter应用程序中)

时间:2016-10-06 07:09:01

标签: android android-recyclerview recycler-adapter

我尝试更改ImageButton背景(例如在Twitter应用中),但如果我更改了第一行中的ImageButton,那么在另一行中,ImageButton也会更改。

此外,我还需要将更改后的ImageButton背景保留在多行中。

我提到了这个链接

RecyclerView causes issue when recycling

但在上面的链接解决方案是:

  1. 一次只选择一行(如导航抽屉中所示)。

  2. 另一种解决方案会导致我提到的问题。

  3. 提前致谢

1 个答案:

答案 0 :(得分:0)

Here您可以找到有关回收者视图的清晰而快速的示例。比如说 你应该使用 onBindViewHolder 覆盖函数。

存储图像信息,然后每次触发onBindViewHolder时应用它。

 @Override
public void onBindViewHolder(ContactsAdapter.ViewHolder viewHolder, int position) {

    Object yourItem = items.get(position);

    ImageView yourImageView = viewHolder.yourImageView ;

    if(yourItem.containsDifferentImage()){
       yourImageViewsetImageResource(R.drawable.my_new_image);
    }
    else{
       yourImageViewsetImageResource(R.drawable.my_standard_image);
    }

}