Introdução do pacote:
implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.47'
adaptador:
public class TeamPoastAdapter extends BaseQuickAdapter<TeamPostEntity,BaseViewHolder> {
private int position = -1;
private Context mContext;
public TeamPoastAdapter(Context context, List<TeamPostEntity> 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);
}
}
Ver a atividade de preenchimento
LinearLayoutManager layoutManager = new LinearLayoutManager(this);
layoutManager.setOrientation(LinearLayoutManager.VERTICAL);
rvTeampost.setLayoutManager(layoutManager);
adapter=new TeamPoastAdapter(context,list);
recycle.setAdapter(adapter);
itme clique em pacote de evento
adapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapters, View view, int position) {
adapter.setSelection(position);//更新adapter 显示点击效果
teamPostEntity=list.get(position);
}
});
Clique no pacote de eventos da subvisão itme
adapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() {
@Override
public void onItemChildClick(BaseQuickAdapter adapters, View view, int position) {
adapter.setSelection(position);
teamPostEntity=list.get(position);
}
});
Esta etapa precisa registrar a visão a ser clicada no adaptador convert
helper.addOnClickListener(R.id.tv_txt);
O incidente de Chang'an é igual ao anterior.