Reputation: 1986
I have CardView
items like this and I want to display numbers in card view items like this
What can I do in adapter to display numbers like 1,2,3.. ?depends upon size?im using retrofit to display data
Here is my adapter :
public class TipsAdapter extends RecyclerView.Adapter<TipsAdapter.CustomViewHolder> {
List<TipsModel> employees;
Context context;
public TipsAdapter(Context context,List<TipsModel> employees) {
this.employees = employees;
this.context=context;
}
@Override
public CustomViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View itemView = LayoutInflater.from(parent.getContext())
.inflate(R.layout.tipstrickitem, parent, false);
return new CustomViewHolder(itemView);
}
@Override
public void onBindViewHolder(CustomViewHolder holder, int position) {
// TipsModel employee = employees.get(position);
holder.employeeName.setText(employees.get(position).getTips());
}
@Override
public int getItemCount() {
return employees.size();
//return (employees == null) ? 0 : employees.size();
}
public class CustomViewHolder extends RecyclerView.ViewHolder {
public TextView employeeName;
public CustomViewHolder(View view) {
super(view);
employeeName = (TextView) view.findViewById(R.id.employeeName);
}
}}
alignment got disturb: enter image description here
Upvotes: 0
Views: 703
Reputation: 3756
change
holder.employeeName.setText(employees.get(position).getTips());
to holder.employeeName.setText(" " + position + ". " + employees.get(position).getTips());
This will add the position of each element of the recycler view as a number before the Tips.
If you want to skip zero replace position with String.valueOf(position+1)
Upvotes: 2