android的listview需要動態的設定listview的高度滿足不同應用的需求。下面就是封裝好的動態設定listview的高度的方法**塊。
/**
* * todo set listviews height
* * @param listview
* @param listadapter
*/public void setlistviewheightbasedonchildren(listview listview,
adapter listadapter)
int totalheight = 0;
for (int i = 0; i < listadapter.getcount(); i++)
viewgroup.layoutparams params = listview.getlayoutparams();
params.height = totalheight
+ (listview.getdividerheight() * (listadapter.getcount() - 1));
((marginlayoutparams) params).setmargins(10, 10, 10, 10);
listview.setlayoutparams(params);
}
方法**塊的作用就是動態的設定乙個listview的高度。現在網上很多發布的方法**塊都是不全的。我也搞不清楚,這裡我就把這個**塊貼出來,免得大家在開發的過程中走彎路。
注意:利用這個方法的時候我們的item的布局選擇很重要。
動態設定listview的高度
1.在scrollview中巢狀listview空間,無法正確的計算listview的大小,故可以通過 根據當前的listview的列表項計算列表的尺寸。實現 如下 private void setlistviewheightbasedonchildren listview listview int...
listView 動態設定高亮
有時候,我們需要動態讓 listview 中的item高亮。比如如下場景。左邊是乙個listview 這個listview 的item是檔案列表 右邊是乙個imageview顯示。如下圖所示 實現方法 listview 的 adapter 繼承自 baseadapter 如下 public clas...
動態設定ViewPager的高度
當viewpager只是作為元素在乙個頁面時,他的高度設定使用match parent和wrap content都沒有效果,最後的結果就是顯示不出來,必須指定固定高度才能顯示出來,但是不會自適應,解決辦法 首先是重寫viewpager的onmeasure方法 package com.yang.dem...