こんにちは私はリサイクラービューで特定のアイテムの色を変更したいと思います。 私はこのコードを使ってこれを行っています。recylerview androidの特定のアイテムの色を変更する
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));
}
が、出力iは正常位置4の項目の背景色を変更し、私は位置14にある項目の背景色を下にスクロールしたときにも変化している
あります。なぜこのようなことが親切に私の問題を解決するのか分かりません。
'onBindViewHolder()'の 'view'とは何ですか?コードが完全ではありません –
@SergeyGlotovコードをチェックして解決してください – Dani