BaseQuickAdapter関数用法ノートrecyclerViewパッケージadapter
2172 ワード
パッケージの導入:
adapter:
Activityでのビューの塗りつぶし
itmeクリックイベントパッケージ
itmeサブviewのクリックイベントパッケージ
クリックするviewをadapter convertに登録する必要があります
長安事件同上.
https://www.jianshu.com/p/40457c16e44a
implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.47'
adapter:
public class TeamPoastAdapter extends BaseQuickAdapter {
private int position = -1;
private Context mContext;
public TeamPoastAdapter(Context context, List data) {
super(R.layout.itme_equip, data);
mContext = context;
}
public void setSelection(int pos) {
this.position = pos;
notifyDataSetChanged();
}
@Override
protected void convert(@NonNull BaseViewHolder helper, TeamPostEntity item) {
//set TextView
helper.setTextColor(R.id.tv_txt, helper.getLayoutPosition() == position ? Color.parseColor("#108EE9") : Color.parseColor("#363636"));
helper.setText(R.id.tv_txt, item.getDicPorperty())
.setText(R.id.score, + item.getAverage());
helper.addOnClickListener(R.id.tv_txt);
}
}
Activityでのビューの塗りつぶし
LinearLayoutManager layoutManager = new LinearLayoutManager(this);
layoutManager.setOrientation(LinearLayoutManager.VERTICAL);
rvTeampost.setLayoutManager(layoutManager);
adapter=new TeamPoastAdapter(context,list);
recycle.setAdapter(adapter);
itmeクリックイベントパッケージ
adapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapters, View view, int position) {
adapter.setSelection(position);// adapter
teamPostEntity=list.get(position);
}
});
itmeサブviewのクリックイベントパッケージ
adapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() {
@Override
public void onItemChildClick(BaseQuickAdapter adapters, View view, int position) {
adapter.setSelection(position);
teamPostEntity=list.get(position);
}
});
クリックするviewをadapter convertに登録する必要があります
helper.addOnClickListener(R.id.tv_txt);
長安事件同上.
https://www.jianshu.com/p/40457c16e44a