实现onCreateViewHolder和onBindViewHolder方法
时间: 2024-01-11 10:50:16 浏览: 115
android 通用的ViewHolder实现
5星 · 资源好评率100%
在RecyclerView中,我们需要创建ViewHolder对象来承载每个item的视图,并将数据绑定到ViewHolder中。这个过程分为两个步骤:创建ViewHolder对象和将数据绑定到ViewHolder中。
下面是onCreateViewHolder和onBindViewHolder方法的实现:
```
@Override
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
// 创建ViewHolder对象
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_layout, parent, false);
MyViewHolder viewHolder = new MyViewHolder(view);
return viewHolder;
}
@Override
public void onBindViewHolder(MyViewHolder holder, int position) {
// 将数据绑定到ViewHolder中
MyData data = mDatas.get(position);
holder.mTextView.setText(data.getText());
holder.mImageView.setImageResource(data.getImageResId());
}
```
在onCreateViewHolder方法中,我们首先通过LayoutInflater.from(parent.getContext()).inflate()方法来创建一个View对象,该View对象用于表示RecyclerView中的一个item视图。然后我们创建一个MyViewHolder对象,并将该View对象作为参数传入构造函数中。
在onBindViewHolder方法中,我们首先根据position获取数据对象。然后我们将数据绑定到ViewHolder中,例如将文本内容设置到TextView中,将图片资源id设置到ImageView中。这样就完成了数据和视图的绑定过程。
阅读全文