shlist

share and manage lists between multiple people
Log | Files | Refs

ListUtils.java (1123B)


      1 package drsocto.shlist;
      2 
      3 import android.view.View;
      4 import android.view.ViewGroup;
      5 import android.widget.ListAdapter;
      6 import android.widget.ListView;
      7 
      8 /**
      9  * Created by David on 7/12/2015.
     10  */
     11 public class ListUtils {
     12     public static void setDynamicHeight(ListView mListView) {
     13         ListAdapter mListAdapter = mListView.getAdapter();
     14         if (mListAdapter == null) {
     15             // when adapter is null
     16             return;
     17         }
     18         int height = 0;
     19         int desiredWidth = View.MeasureSpec.makeMeasureSpec(mListView.getWidth(), View.MeasureSpec.UNSPECIFIED);
     20         for (int i = 0; i < mListAdapter.getCount(); i++) {
     21             View listItem = mListAdapter.getView(i, null, mListView);
     22             listItem.measure(desiredWidth, View.MeasureSpec.UNSPECIFIED);
     23             height += listItem.getMeasuredHeight();
     24         }
     25         ViewGroup.LayoutParams params = mListView.getLayoutParams();
     26         params.height = height + (mListView.getDividerHeight() * (mListAdapter.getCount() - 1));
     27         mListView.setLayoutParams(params);
     28         mListView.requestLayout();
     29     }
     30 }