基本上,我使用一种流行的策略来将背景图像居中,方法是LinearLayout
将其包装在 a 中FrameLayout
并添加一个fill_parent
在LinearLayout
. 但是,当我ScrollView
在游戏中添加 a 时,一切都变了。
问题是图像在垂直方向上非常大,并且由于height 属性而ScrollView
尊重 theImageView
和 the的高度。当图像垂直大于它时,这会导致 LinearLayout 下方出现不需要的空白空间。LinearLayout
wrap_content
如何使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>