I have a simple layout: (it is for mail)
<ScrollView android:layout_height="0dp" android:layout_width="fill_parent" android:layout_weight="1" android:background="@color/red_start">
<LinearLayout android:layout_height="fill_parent" android:layout_width="fill_parent" android:orientation="vertical" android:background="@color/blue_start">
<TextView style="@style/MyTextViewLabel" android:text="From" android:layout_marginTop="5dp"/>
<LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@drawable/shape_white_rounded">
<TextView style="@style/MyTextViewLabel.Black" android:id="@+id/tv_sender" />
</LinearLayout>
<TextView style="@style/MyTextViewLabel" android:text="Subject" android:layout_marginTop="5dp"/>
<LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@drawable/shape_white_rounded">
<TextView style="@style/MyTextViewLabel.Black" android:id="@+id/tv_subject" />
</LinearLayout>
<TextView style="@style/MyTextViewLabel" android:text="Body" android:layout_marginTop="5dp"/>
<LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@drawable/shape_white_rounded">
<TextView style="@style/MyTextViewLabel.Black" android:id="@+id/tv_body" />
</LinearLayout>
</LinearLayout>
</ScrollView>
For some reason, LinearLayout will not populate the ScrollView as I expect. Basically, I want to make tv_body to fill the screen, and if there is more text, it should be scrollable. Now it looks like this. I added colors to illustrate that ScrollView is stretched, but LinearLayout does not.

source
share