gpt4 book ai didi

android - 更改 recyclerview android 中特定项目的颜色

转载 作者:太空狗 更新时间:2023-10-29 16:29:16 25 4
gpt4 key购买 nike

您好,我想更改回收站 View 中特定项目的颜色。我已经使用此代码完成了此操作。

public class CustomAdapter extends RecyclerView.Adapter<CustomAdapter.MyViewHolder> {

LayoutInflater inflater;
Context context;
clickME click;
View view;

ArrayList<String > data;

public CustomAdapter(Context context,ArrayList<String> data) {
this.context=context;
this.data=data;
inflater= LayoutInflater.from(context);

}

@Override
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {

view=inflater.inflate(R.layout.list_row,parent,false);

MyViewHolder holder=new MyViewHolder(view);
return holder;
}

@Override
public void onBindViewHolder(MyViewHolder holder, int position) {


int select=4;
if(select == position) {
view.setBackgroundColor(Color.BLUE);
Toast.makeText(context,""+position,Toast.LENGTH_SHORT).show();
} else {
view.setBackgroundColor(Color.parseColor("#214F4B"));
Toast.makeText(context,""+position,Toast.LENGTH_SHORT).show();

}
holder.tv_title.setText(data.get(position));



}

但是输出是 enter image description here

enter image description here

我已经成功地改变了位置 4 的项目的背景颜色,但是当我向下滚动时,位置 14 的项目的背景颜色也改变了。我不知道为什么会发生这种情况,请解决我的问题

最佳答案

问题是您没有回收view View 。您还没有发布 ViewHolder 代码,但您应该在 中使用 holder.view.setBackgroundColor(...) 而不是 view.setBackgroundColor(...) >onBindViewHolder 方法。

关于android - 更改 recyclerview android 中特定项目的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43187125/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com