我的活动包含条纹背景图片。点击放大 - 这是我正在使用的原始图像。另外还有一个带有徽标的版本。
它看起来很好。我通过XML将它设置为活动的背景,类似这样。
我需要将黑客作为ImageView才能在背景中正确centerCrop
徽标,但这与问题无关,因为在为{{1}设置background
时它仍然存在并删除RelativeLayout
。
ImageView
请注意,由于图像内部必须有徽标,因此我无法人工拉伸或重复使用徽标。
在布局预览屏幕中,它看起来像这样:
在模拟器中,它看起来像这样:
正如您所看到的,与我的预期相比,它看起来非常糟糕:
当然,我已经为所有显示分辨率创建了条纹背景的版本(从<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<ImageView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:adjustViewBounds="true"
android:scaleType="centerCrop"
android:src="@drawable/background_striped" />
到ldpi
),但它们似乎总是以非常糟糕的方式缩放。
有没有办法让背景缩放到更高的质量?只使用xhdpi
版本不会带来更好的质量 - 它只会使比例结果变得更糟,更多的褪色。
答案 0 :(得分:1)
对于可伸缩的drawable,最好使用9-patch。您可以使用android 9-patch工具创建一个带有小条纹背景图像的文件:
答案 1 :(得分:1)
尝试使用repeat
。我测试了它,看起来很好看。
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/background_striped"
android:tileMode="repeat" />