创建productAdpterList类,实现适配器自定义
时间: 2024-12-12 18:27:52 浏览: 2
创建ProductAdapterList类通常是为了在Android开发中将数据源与列表视图(如RecyclerView)匹配起来,以便展示数据。这个类作为适配器(Adapter)的角色,负责管理数据和界面之间的交互。下面是一个基本的产品适配器类的概述:
```java
public class ProductAdapterList extends RecyclerView.Adapter<ProductAdapterList.ProductViewHolder> {
private List<Product> productList; // 数据源,假设Product是一个自定义类
private OnItemClickListener mListener;
// 构造函数接受数据源
public ProductAdapterList(List<Product> productList) {
this.productList = productList;
}
// 创建ViewHolder用于持有每个列表项的布局
static class ProductViewHolder extends RecyclerView.ViewHolder {
TextView titleTextView;
ImageView imageView;
// 其他视图...
public ProductViewHolder(View itemView) {
super(itemView);
titleTextView = itemView.findViewById(R.id.title_text_view);
imageView = itemView.findViewById(R.id.image_view);
// 初始化其他视图
}
}
@Override
public ProductViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View itemView = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_product, parent, false);
return new ProductViewHolder(itemView);
}
@Override
public void onBindViewHolder(ProductViewHolder holder, int position) {
Product product = productList.get(position);
holder.titleTextView.setText(product.getTitle());
holder.imageView.setImageResource(product.getImageResourceId());
// 设置其他视图属性
}
@Override
public int getItemCount() {
return productList.size();
}
// 添加点击监听器接口
public interface OnItemClickListener {
void onItemClick(int position);
}
// 注册事件监听
public void setOnItemClickListener(OnItemClickListener listener) {
this.mListener = listener;
}
// 当用户点击列表项时,调用注册的回调
public void onItemClick(int position) {
if (mListener != null) {
mListener.onItemClick(position);
}
}
}
```
阅读全文