1

我正在创建安卓应用程序。

我的手机是 Galays S3

我创建了一个 png 文件,它也是应用程序的背景,大小为 W:680px - H:120pdx。

它很合适。但是当我在模拟器上运行它时,图像被拉伸并且只看到大约 50% 的背景图像..

我通过以下代码调用了背景图像..

<ImageView

android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bg"
android:scaleType="matrix" />

所有 drawlble 文件夹,如 hdpi 、 mdpi 、 xhdpi 、 xxhdpi 具有相同的文件,具有相同的分辨率和大小.. bg.png 。尺寸 W:680px - H:120pdx。

4

3 回答 3

1

如果你不想拉伸它,你可以使用android:scaleType="centerCrop"

实际上,如果设备不同,您必须选择拉伸或不显示全部。

你可以在这里找到所有可能的值scaleType

于 2014-03-04T20:07:11.260 回答
1

这实际上取决于您想要实现的目标,但看起来您应该使用scaletype="centercrop". 你会得到你的图像全屏但被裁剪。如果您希望它全屏并以较低的分辨率拉伸,请使用fitcenter.

正如您应该解释的那样,很难确切地知道您的想法:

  • 你想在低密度下发生什么
  • 在与您的图像具有不同比率的设备上会发生什么。

其他选项: http: //developer.android.com/reference/android/widget/ImageView.html#attr_android :scaleType

于 2014-03-04T20:05:25.140 回答
0

您需要确保您的 Android 模拟器的显示分辨率与您拥有的 Galaxy S3 手机的显示分辨率相同。如果不是,您需要缩放图像以适合您的模拟器显示。此外,如果您希望 ImageView 拉伸以填充显示,则需要使用“match_parent”而不是“wrap_content”。请注意,这会影响图像质量。

于 2014-03-04T20:07:06.303 回答