Ist es möglich, den gleichen Adapter in zwei Aktivitäten für unterschiedliche Arbeiten Hier ist mein RecyclerAdapter: Der einzige Unterschied, wenn aus zwei Aktivitäten aufrufen, ist in dieser Zeile: Von Activity1. Java ist:Wie man den gleichen Adapter in zwei Aktivitäten auf verschiedene Arten verwendet
holder.Name.setText(arrayList.get(position).getName());
Und von Activity2.java
holder.Name.setText(arrayList.get(position).getVehicle());
Alle anderen Code ist der gleiche, wie ich denselben Adapter für verschiedene andere Arbeit verwenden können.
public class RecyclerAdapter extends RecyclerView.Adapter<RecyclerAdapter.MyViewHolder> {
private ArrayList<Contact> arrayList= new ArrayList<>();
public RecyclerAdapter(ArrayList<Contact> arrayList){
this.arrayList= arrayList;
}
@Override
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view= LayoutInflater.from(parent.getContext()).inflate(R.layout.item_view,parent,false);
return new MyViewHolder(view);
}
@Override
public void onBindViewHolder (MyViewHolder holder, int position) {
holder.Name.setText(arrayList.get(position).getName());
int sync_status = arrayList.get(position).getSync_status();
if(sync_status== DbContact.SYNC_STATUS_OK){
holder.Sync_Status.setImageResource(R.drawable.success);
}
else {
holder.Sync_Status.setImageResource(R.drawable.stopwatch);
}
}
@Override
public int getItemCount() {
return arrayList.size();
}
public static class MyViewHolder extends RecyclerView.ViewHolder{
ImageView Sync_Status;
TextView Name;
public MyViewHolder(View itemView) {
super(itemView);
Sync_Status=(ImageView)itemView.findViewById(R.id.imgSync);
Name=(TextView)itemView.findViewById(R.id.txtName);
}
}
}