ScrollView属性fillViewport解决android布局不能撑满全屏的问题
ScrollView中的组件设置android:layout_height="fill_parent"不起作用的解决办法
在ScrollView中添加一个Android:fillViewport="true"属性就可以了。顾名思义,这个属性允许 ScrollView中的组件去充满它。 当ScrollView没有fillVeewport=“true”时, 里面的元素(比如LinearLayout)会按照wrap_content来计算(不论它是否设了"fill_parent"),而如果LinearLayout的元素设置了fill_parent,那么也是不管用的,因为LinearLayout依赖里面的元素,而里面的元素又依赖LinearLayout,这样自相矛盾.所以里面元素设置了fill_parent,也会当做wrap_content来计算.
例子,在ScrollView下加入的组件,无论如何也不能自动扩展到屏幕高度。
布局文件。
<?xml version="1.0" encoding="utf-8"?>
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#0000ff" >
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#00ff00" >
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_weight="1"
android:text="Hello Android." >
效果图。
尽管已经设置了android:layout_height="fill_parent",但是,整个LinearLayout和TextView还是不能充满整个屏幕。
解决办法。
在ScrollView中添加一个android:fillViewport="true"属性就可以了。顾名思义,这个属性允许ScrollView中的组件去充满它。
修改后的效果图。
更多相关文章
- Android ImageView的scaleType属性与adjustViewBounds属性
- Android学习——基础组件
- 有关Android中EditText的一些属性
- Android自定义属性,format详解
- Android 错误 :TextView中属性ellipsize的 值为start、middle可能
- Android adb命令启动系统组件
- android中的一个属性动画,可以显示更多的一个案例
- android调用系统邮件组件(intent匹配的流程)
- RelativeLayoutd 的属性