Adapter的position警告
2019-01-03 本文已影响13人
主音King
RecyclerView的adapter中onBindViewHolder警告
原因1:positon赋值给成员变量。改为
currentPostion = holder.getAdapterPosition();
原因2:需要在回调中用position,比如onClick中使用,导致final int position。改为使用final ViewHolder holder。用 holder.getAdapterPosition()代替position。
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
list.get(holder.getAdapterPosition()).stars > 0
}
});
总结:在回调中和赋值position的时候要用holder.getAdapterPosition()替代position