我正在尝试在我的 Android 应用程序中使用图像作为背景。如果图像不适合屏幕,我希望图像水平居中并垂直顶部。应通过重复边缘来填充剩余的屏幕区域。
我的布局 xml 如下所示:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:background="@drawable/background_image"
>
<ScrollView
android:layout_width="fill_parent" android:layout_height="fill_parent"
>
...
</ScrollView>
</LinearLayout>
我尝试使用draw9patch 将左右列以及顶行像素标记为可拉伸。这似乎适用于较小的设备,但不适用于 Galaxy Tab 10.1 和 Motorola Xoom。边缘在垂直方向上重复,但在水平方向上不重复。
我还尝试使用tileMode =“clamp”创建一个xml-drawable
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:filter="true"
android:gravity="center"
android:tileMode="clamp"
android:src="@drawable/background"
/>
但这不允许我将图像水平居中。
如何将clamp和center_horizontal结合起来?
Per the 文档 http://developer.android.com/reference/android/graphics/drawable/BitmapDrawable.html#attr_android:tileMode“启用平铺模式时,重力将被忽略。”
可以使用自定义绘图来执行此操作。Here http://blog.jamesbaca.net/?p=217是一个使用水平居中图像左右夹紧的示例。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)