<?xml version="1.0" encoding="utf-8"?>
<!-- 背景:蓝色 -->
<ScrollView android:layout_width="fill_parent" android:id="@+id/scrollView1"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="fill_parent" android:background="@color/solid_blue">
<!-- 背景:黄色 -->
<LinearLayout android:id="@+id/linearLayout1" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:background="@color/solid_yellow">
<TextView android:text="TextView" android:id="@+id/textView1"
android:layout_width="wrap_content" android:layout_height="fill_parent"
android:layout_weight="1">
</TextView>
</LinearLayout>
</ScrollView>
虽然我的所有组件都设置了android:layout_height="fill_parent",但是结果依然不能扩展到全屏高度,为了看到组件实际大小,我设置了布局组件的背景色,显示效果如下:
很明显,scrollview(蓝色)已经扩展到最大高度了,但是其内部的linearlayout(黄色)却没有扩展.
试了很多办法,就是没有办法让linearlaout组件扩大.
最终,在一个国外的网站上,找到了答案,描述如下:
......
Found the solution myself in the end. The problem was not with the LinearLayout
, but with theScrollView
(seems weird, considering the fact that the ScrollView
was expanding, while theLinearLayout
wasn't).
The solution was to use android:fillViewport="true"
on the ScrollView
.
原文链接:
http://stackoverflow.com/questions/2599837/linearlayout-not-expanding-inside-a-scrollview
果然,需要设置scrollview的fillViewport属性为"true"才能使其子组件可以扩展!
效果:
向大虾们学习了!