Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Get Width and Height of one row in RecycleView - Android

Tags:

I'm creating RecycleView with some items. So I need to get the width and height of the one row of RecycleView

Here I'm creating RecycleView:

    RecyclerView rvSmetki = (RecyclerView) findViewById(R.id.rvArtikli);     rvSmetki.setLayoutManager(new GridLayoutManager(this, 3););     rvSmetki.setAdapter(new ArtikliAdapter(this));      // Here I want to get width and height.... 

And this is my ArtikliAdapter:

public class ArtikliAdapter extends RecyclerView.Adapter<ArtikliAdapter.ViewHolder> {      private static Context context;      private LayoutInflater inflater;     private ArrayList<Artikl> artikliList;      public ArtikliAdapter(Context context) {         this.context = context;         inflater = LayoutInflater.from(context);         artikliList = LogInActivity.getArtiklList();     }      @Override     public ArtikliAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {         View row = inflater.inflate(R.layout.artikli_row, parent, false);         return new ArtikliAdapter.ViewHolder(row);     }      @Override     public void onBindViewHolder(ArtikliAdapter.ViewHolder holder, int position) {         Artikl currentArtikl = artikliList.get(position);          holder.tvNaziv.setText(currentArtikl.getNaziv());         holder.tvCena.setText("Цена: " + currentArtikl.getProdaznaCena());     }      @Override     public int getItemCount() {         return artikliList.size();     }      static class ViewHolder extends RecyclerView.ViewHolder {          private RelativeLayout rlArtikl;         private TextView tvNaziv;         private TextView tvCena;          public ViewHolder(View itemView) {             super(itemView);              rlArtikl = (RelativeLayout) itemView.findViewById(R.id.rlArtikl);             tvNaziv = (TextView) itemView.findViewById(R.id.tvNaziv);             tvCena = (TextView) itemView.findViewById(R.id.tvCena);         }     } } 

Image

How can I get width and height of one row?

like image 759
KiKo Avatar asked Jul 01 '15 12:07

KiKo


1 Answers

@Override public void onBindViewHolder(final MyAdapter.MyViewHolder holder, int position)  {  .....     holder.itemView.post(new Runnable()     {         @Override         public void run()         {              int cellWidth = holder.itemView.getWidth();// this will give you cell width dynamically             int cellHeight = holder.itemView.getHeight();// this will give you cell height dynamically          }     });   ..... } 

I hope this will help you!!

like image 172
Amrut Bidri Avatar answered Sep 28 '22 03:09

Amrut Bidri