RecycleView 笔记

    科技2022-07-21  118

    MainActivity.java解释

    //声明RecycleView MainActivity.java private RecyclerView mlist //ItemBean 为模型结构 private List<ItemBean> mdata //onCreate方法 onCreate(){ //1. 绑定activity_main2.xml布局文件 setContentView(R.layout.activity_main2); //2 mlist 绑定到activity_main2.xml -->recycler_view2 RecyclerView控件 mlist = (RecyclerView) this.findViewById(R.id.recycler_view2); //3 RecyclerView 设置布局管理器 LinearLayoutManager lm = new LinearLayoutManager(this); //4 mlist绑定到布局管理器 mlist.setLayoutManager(lm); //5 创建适配器 ListViewAdapter1 adapter=new ListViewAdapter1(mdata); //6 设置到RecyclView mlist.setAdapter(adapter); } //ItemBean.java public class ItemBean(){ public int pkid; public String title; }

    Adapter解释

    public class ListViewAdapter extends RecyclerView.Adapter<ListViewAdapter.InnerHolder> { private final List<ItemBean> mData; public ListViewAdapter(List<ItemBean> data) { this.mData = data; } // 用于创建条目View @Override public InnerHolder onCreateViewHolder(ViewGroup parent, int viewType) { // view 就是条目的界面 // 1.拿到view // 2.创建内部Holder // View.inflate(parent.getContext(), R.layout.item_list_view,null); View view = View.inflate(parent.getContext(), R.layout.item_list_view, null); return new InnerHolder(view); } // 用于绑定holder 一般用来设置数据 @Override public void onBindViewHolder(InnerHolder holder, int position) { // 在这里设置数据 holder.setData(mData.get(position)); } // 返回个数 @Override public int getItemCount() { if (mData != null) { return mData.size(); } return 0; } public class InnerHolder extends RecyclerView.ViewHolder { private ImageView micon; private TextView mtitle; public InnerHolder(View itemView) { super(itemView); // 找到条目的控件 micon= (ImageView) itemView.findViewById(R.id.icon); mtitle= (TextView) itemView.findViewById(R.id.title); } // 设置数据 public void setData(ItemBean itemBean) { // 开始设置数据 micon.setImageResource(itemBean.icon); mtitle.setText(itemBean.title); } } }

     

    Processed: 0.012, SQL: 8