private class CustomAdapter extends RecyclerView.Adapter<CustomAdapter.MyViewHolder> {
@Override
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.list_item, null);
return new MyViewHolder(v);
}
@Override
public void onBindViewHolder(MyViewHolder holder, final int position) {
holder.icon.setImageResource(iconImg[position]);
holder.nmWebsite.setText(nmWebsite[position]);
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {}
});
}
@Override
public int getItemCount() {
return nmWebsite.length;
}
public class MyViewHolder extends RecyclerView.ViewHolder {
ImageView icon;
TextView nmWebsite;
public MyViewHolder(View itemView) {
super(itemView);
icon = itemView.findViewById(R.id.imgIcon);
nmWebsite = itemView.findViewById(R.id.Web);
}
}
答案 0 :(得分:0)
使用getAdapterPosition()
方法从RecyclerView.ViewHolder
班级获取职位。在itemView
课程中实施ClickListener
ViewHolder
。
public class MyViewHolder extends RecyclerView.ViewHolder {
ImageView icon;
TextView nmWebsite;
public MyViewHolder(View itemView) {
super(itemView);
icon = itemView.findViewById(R.id.imgIcon);
nmWebsite = itemView.findViewById(R.id.Web);
itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
int position = getAdapterPosition();
if(position== 0){
//.................
}else if(position == 1){
//.................
}
//.......................
}
});
}
}