1. 程式人生 > >android listview巢狀Listview不能顯示全部內容

android listview巢狀Listview不能顯示全部內容

需要在setapdater後呼叫這個方法,必須保證子Listview的每個項textview外面都有linerlayout

 public static void setListViewHeightBasedOnChildren(ListView listView) {  
       ListAdapter listAdapter = listView.getAdapter();   
       if (listAdapter == null) {  
           // pre-condition  
           return;  
       }  
 
       int totalHeight = 0;  
       for (int i = 0; i < listAdapter.getCount(); i++) {  
           View listItem = listAdapter.getView(i, null, listView);  
           listItem.measure(0, 0);  
           totalHeight += listItem.getMeasuredHeight();  
       }  
 
       ViewGroup.LayoutParams params = listView.getLayoutParams();  
       params.height = totalHeight + (listView.getDividerHeight() * (listAdapter.getCount() - 1));  
       listView.setLayoutParams(params);  
   }