【问题标题】:Android scales hdpi image on hdpi deviceAndroid 在 hdpi 设备上缩放 hdpi 图像
【发布时间】:2013-03-15 14:59:15
【问题描述】:

我注意到我的应用程序中的所有图像似乎都比原始图像小。例如。

我将图像放在这样的活动上:

<ImageView android:layout_width="wrap_content" android:layout_height="wrap_content"
           android:src="@drawable/ic_search_dark"
           />

我从结果中截取了一张截图,并将图像测量为 25x25:

http://petromi.com/get/86b23cdb63.png

但它的实际尺寸是 28x28:

http://petromi.com/get/fd68913104.png

图像已放置到drawables-hdpi 文件夹。设备是 1280x800 平板电脑。我已将其显示指标记录如下:

Log.d("Screen (%s, %s) - [%s, %s] [%s]", dm.widthPixels, dm.heightPixels, dm.xdpi, dm.ydpi, dm.densityDpi);

我得到了:

Screen (1280, 736) - [160.0, 160.15764] [213]
Screen (800, 1216) - [160.0, 160.15764] [213]

(纵向和横向)

令我惊讶的是,Android 会在 hdpi 设备上从 drawable-hdpi 缩放图像。可以吗?如果是的话,你们能给我一个描述这些规则的链接吗?

【问题讨论】:

  • 有趣 - 数字是正确的。 28 * 213/240 = 24.85。著名的文档说:“当您的应用程序在不同密度的屏幕上显示时,它保留了用户界面元素的物理尺寸(从用户的角度来看),从而实现了“密度独立性”。”

标签: android android-resources hdpi


【解决方案1】:

如果设备注册为hdpi 设备,它将从hdpi 文件夹中获取图像。然后它将继续将图像缩放到设备的实际规格。这个是正常的。

hdpi 的 dpi 是 240。您所拥有的是213,因此图像仍将根据240 dpi 设置进行缩放。

如果您不想进行任何缩放,则需要将图像放在drawable-nodpi 文件夹中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-18
    • 2014-02-22
    • 2016-02-19
    • 2013-01-01
    相关资源
    最近更新 更多