1.在scrollview中巢狀listview空間,無法正確的計算listview的大小,故可以通過**,根據當前的listview的列表項計算列表的尺寸。實現**如下:
private
void
setlistviewheightbasedonchildren(listview listview)
int totalheight = 0;
for (int i = 0; i < listadapter.getcount(); i++)
viewgroup.layoutparams params = listview.getlayoutparams();
params.height = totalheight
+ (listview.getdividerheight() * (listadapter.getcount() - 1));
listview.setlayoutparams(params);
}
使用該方法需要注意:子listview的每個item必須是linearlayout,不能是其他的,因為其他的layout(如relativelayout)沒有重寫onmeasure(),所以會在onmeasure()時丟擲異常。
2、 自定義listview,過載onmeasure()方法,設定全部顯示
**如下:
/**
* integer.max_value >> 2,如果不設定,系統預設設定是顯示兩條
*/public
void
onmeasure(int widthmeasurespec, int heightmeasurespec)
ListView動態的設定高度
android的listview需要動態的設定listview的高度滿足不同應用的需求。下面就是封裝好的動態設定listview的高度的方法 塊。todo set listviews height param listview param listadapter public void setlis...
listView 動態設定高亮
有時候,我們需要動態讓 listview 中的item高亮。比如如下場景。左邊是乙個listview 這個listview 的item是檔案列表 右邊是乙個imageview顯示。如下圖所示 實現方法 listview 的 adapter 繼承自 baseadapter 如下 public clas...
動態設定ViewPager的高度
當viewpager只是作為元素在乙個頁面時,他的高度設定使用match parent和wrap content都沒有效果,最後的結果就是顯示不出來,必須指定固定高度才能顯示出來,但是不會自適應,解決辦法 首先是重寫viewpager的onmeasure方法 package com.yang.dem...