第一行代码RecyclerView的基本用法的问题

鄱湖听风 鄱湖听风 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
首先,加载RecyclerView需要定义一个实体类。定义一个Fruit。
public class Fruit {
private String name;
private int imageId;
public Fruit(String name,int imageId)
{
this.name=name;
this.imageId=imageId;
}
public String getName()
{
return name;
}
public int getImageId()
{
return imageId;
}

然后需要自定义布局,再然后需要一个适配器
public  class FruitAdapter extends RecyclerView.Adapter<FruitAdapter.ViewHolder> {
private List<Fruit> mFruitList;
static class ViewHolder extends RecyclerView.ViewHolder
{
View fruitView;
ImageView fruitImage;
TextView fruitName;
public ViewHolder(View view)
{
super(view);
fruitView=view;
fruitImage=(ImageView)view.findViewById(R.id.fruit_image);
fruitName=(TextView)view.findViewById(R.id.fruit_name);

}
}
public FruitAdapter(List<Fruit> fruitList)
{
mFruitList=fruitList;
}
@Override
public FruitAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view= LayoutInflater.from(parent.getContext()).inflate(R.layout.fruit_item,parent,false);
final ViewHolder holder=new ViewHolder(view);
holder.fruitView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
int possition=holder.getAdapterPosition();
Fruit fruit =mFruitList.get(possition);
Toast.makeText(view.getContext(),"you cicked view"+fruit.getName(),Toast.LENGTH_SHORT).show();
}
});
holder.fruitImage.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
int possition=holder.getAdapterPosition();
Fruit fruit =mFruitList.get(possition);
Toast.makeText(view.getContext(),"you cicked image"+fruit.getName(),Toast.LENGTH_SHORT).show();
}
});
return holder;
}

@Override
public void onBindViewHolder(FruitAdapter.ViewHolder holder, int position) {
Fruit fruit=mFruitList.get(position);
holder.fruitImage.setImageResource(fruit.getImageId());
holder.fruitName.setText(fruit.getName());

}

@Override
public int getItemCount() {
return mFruitList.size();
}
}
我想知道:为什么适配器需要Fruit这个类,这个类的数据是怎么传入适配器的
...全文
评论 11
收藏 已收藏
分享
返回顶部
鄱湖听风
Android 80,489 成员 91,371 内容