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);
}
}
}