【发布时间】:2012-09-23 13:31:56
【问题描述】:
基本上,我使用一种流行的策略将LinearLayout 的背景图像居中,方法是将其包装在FrameLayout 中,并在LinearLayout 之前添加一个使用fill_parent 的ImageView。然而,当我在游戏中添加ScrollView 时,一切都变了。
问题是图像在垂直方向上非常大,并且由于wrap_content 高度属性,ScrollView 尊重ImageView 和LinearLayout 的高度。当图像垂直大于它时,这会导致 LinearLayout 下方出现不需要的空白。
如何使 FrameLayout 的高度仅拉伸到子 LinearLayout 的高度?如果可能,不要在运行时/绘图时以编程方式修改其大小。
<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:fillViewport="true" >
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<ImageView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scaleType="center"
android:src="@drawable/cash_bg" />
<LinearLayout
android:id="@+id/main_ll"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="vertical" >
<!-- My main views are here -->
</LinearLayout>
</FrameLayout>
</ScrollView>
【问题讨论】:
标签: android android-linearlayout android-imageview android-xml android-framelayout