RecyclerView学习中的例子里的itemView是怎么来的?可能有一些初学者会遇到这个问题,RecyclerView的例子里继承
RecyclerView.ViewHolder的实现,构造函数里开始是
super(inflater.inflate(R.layout.list_item_crime, parent, false));这种形式,接着
itemView.setOnClickListener(this);是不是有些迷惑,itemView怎么来的?也没有定义这个变量啊?但看完源码后发现
public static abstract class ViewHolder {
public final View itemView;
。。。。。。。。。。
public ViewHolder(View itemView) {
if (itemView == null) {
throw new IllegalArgumentException("itemView may not be null");
}
this.itemView = itemView;
}
。。。。。。
}
其实这个itemView就是ViewHolder返回的View,果然不懂得问题就去看源代码,一般都会有收获,加油!