Android 用Databinding寫recyclerview的adapter
1還是寫一個模板,以後要用的時候直接cv大法,粘貼自己寫的模板畢竟更方便。
2隨便來一個item的佈局
3與之對應的adapter
public class FirstNaviAdapter extends RecyclerView.Adapter { private List listBeen; private Context context; public FirstNaviAdapter(List listBeen, Context context) {//構造函數要數據跟上下文 this.listBeen = listBeen; this.context = context; } @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { ItemFirstNaviBinding binding = DataBindingUtil.inflate(LayoutInflater.from(context), R.layout.item_first_navi, parent, false); return new ViewHolder(binding.getRoot()); } @Override public void onBindViewHolder(ViewHolder holder, int position) { ItemFirstNaviBinding binding = DataBindingUtil.getBinding(holder.itemView); binding.setListBean(listBeen.get(position)); binding.executePendingBindings(); } @Override public int getItemCount() { return listBeen.size(); } public static class ViewHolder extends RecyclerView.ViewHolder { public ViewHolder(View itemView) { super(itemView); } } }
代碼很簡單,沒有什麼要標記的
我之前還看過一個更優雅的寫法,忘記瞭,等我有時間在學習一下在修改一下。