模拟器上的背景被拉伸

时间:2013-01-07 20:37:21

标签: java android

我的Android应用程序背景是png图像。它的尺寸为800 x 480像素。 它被宽度方向拉伸,因此看起来并不像我想要的那样。由于图像实际上是应用程序的背景而不仅仅是imageView,我无法使用android:scaleType =“centerCrop”来使图像同等地缩放。

我需要图像平均填充背景。

我也尝试使用NinePatch drawable,但结果并不是很好 - 图像变得模糊或垂直拉伸但没有宽度。

before image after image as seen on emulator

这是我的XML代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:background="@drawable/menu"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" 

我可以使用其他命令来正确显示背景吗?

2 个答案:

答案 0 :(得分:1)

解决此问题使用draw9patch

Android的SDK /工具/ draw9patch

https://developer.android.com/tools/help/draw9patch.html

答案 1 :(得分:0)

使用imageview

<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/your_image"
android:scaleType="fitCenter"
/>

同时检查Link

ImageView.ScaleType     CENTER_CROP

Scale the image uniformly (maintain the image's aspect ratio) so that both dimensions (width and height) of the image will be equal to or larger than the corresponding dimension of the view (minus padding).