Android在hdpi设备上缩放hdpi图像

dar*_*rja 1 android hdpi android-resources

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

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

<ImageView android:layout_width="wrap_content" android:layout_height="wrap_content"
           android:src="@drawable/ic_search_dark"
           />
Run Code Online (Sandbox Code Playgroud)

我从结果中截取屏幕截图并将图像测量为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);
Run Code Online (Sandbox Code Playgroud)

我得到了:

Screen (1280, 736) - [160.0, 160.15764] [213]
Screen (800, 1216) - [160.0, 160.15764] [213]
Run Code Online (Sandbox Code Playgroud)

(用于肖像和风景)

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

Dee*_*eeV 5

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

dpi hdpi240.你有什么213,所以图像仍然会根据240 dpi设置进行缩放.

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