1. 程式人生 > >使用ScrollView屬性fillViewport解決android佈局不能撐滿全屏的問題

使用ScrollView屬性fillViewport解決android佈局不能撐滿全屏的問題

最近在開發專案中遇到一個問題,佈局高度在某些國產酷派小螢幕手機上高度不夠全部顯示,於是使用了ScrollView巢狀LinearLayout,但問題又出現了,在大螢幕手機如三星note3手機上下面會留白,問題的解決辦法是在第一層LinearLayout裡面巢狀多個LinearLayout,最重要的是將ScrollView中android:fillViewport設定為true。

當ScrollView裡的元素想填滿ScrollView時,使用"fill_parent"是不管用的,必需為ScrollView設定:android:fillViewport="true"。

   當ScrollView沒有fillViewport=“true”時, 裡面的元素(比如LinearLayout)會按照wrap_content來計算(不論它是否設了"fill_parent"),而如果LinearLayout的元素設定了fill_parent,那麼也是不管用的,因為LinearLayout依賴裡面的元素,而裡面的元素又依賴LinearLayout,這樣自相矛盾.所以裡面元素設定了fill_parent,也會當做wrap_content來計算.