ScrollView中嵌套ListView主要代碼

不少時間咱們在scorllview中嵌入listview的時候,都只能看到listview顯示一行數據,而咱們的要求是顯示多行,即咱們數據的行數, 當ListView的高度設定必定的值時,ListView一樣地會顯示對應的高度的Item。 所以咱們能夠計算出這個ListView的總高度,再將它設置到ListView中,那麼以前的滾動,高度問題也就不存在了。那麼請看下面的代碼:git

private void fixListViewHeight(ListView listView) {
            // TODO Auto-generated method stub
              // 若是沒有設置數據適配器,則ListView沒有子項,返回。  
            ListAdapter listAdapter = listView.getAdapter();  
            int totalHeight = 0;   
            if (listAdapter == null) {   
                return;   
            }   
            for (int i = 0, len = listAdapter.getCount(); i < len; i++) {     
                View listViewItem = listAdapter.getView(i , null, listView);  
                // 計算子項View 的寬高   
                listViewItem.measure(0, 0);    
                // 計算全部子項的高度和
                totalHeight += listViewItem.getMeasuredHeight();    
            }   
       
            ViewGroup.LayoutParams params = listView.getLayoutParams();   
            // listView.getDividerHeight()獲取子項間分隔符的高度   
            // params.height設置ListView徹底顯示須要的高度    
            params.height = totalHeight+ (listView.getDividerHeight() * (listAdapter.getCount() - 1));   
            listView.setLayoutParams(params);   
        }

原文詳情地址:http://git.oschina.net/einsqi...
wemall官網地址:http://www.wemallshop.comide

相關文章
相關標籤/搜索