20

我在文件夹下有一个尺寸为 250*70 像素的图像drawable(我刚开始进行 Android 开发,所以我在 中创建了drawable文件夹res),我在文件夹中有相同的图像,尺寸更高drawable-large;但图像看起来不像我预期的那样。

谁能解释 3 个可绘制文件夹背后的原因/目的?

我应该在哪里存储我的图像,以便它在两种模式(横向和纵向)和所有手机(包括平板电脑)中都能正确显示?

我希望我的图像动态缩放到设备屏幕的大小。

任何人都可以分享您的观点或搜索链接吗?

4

6 回答 6

31

文件夹名称需要是:

  • /drawable-ldpi 用于低密度屏幕
  • /drawable-mdpi 用于中等密度屏幕
  • /drawable-hdpi 用于高分辨率屏幕
  • /drawable-xhdpi 用于超高分辨率屏幕

/drawable 应该为您(1)不关心哪个设备或(2)xml可绘制资产的资产保留

然后最重要的是,您可以使用配置限定符根据配置提供不同的资源,您可以在此处阅读所有相关信息http://developer.android.com/guide/topics/resources/providing-resources.html

例如,您可以拥有带有文件夹的风景的高分辨率资产

  • /drawable-land-hdpi

希望有帮助

于 2012-05-09T13:51:23.707 回答
16

默认情况下,Android 为具有不同分辨率的图像维护三个文件夹,其背后的原因是应用程序将在其上执行的 Android 设备的使用或分辨率。

hdpi 图像文件夹维护 Android 宽屏集或具有更高分辨率的 Android 手机的图像。

ldpi 用于较低的图像质量,由早期的 android 集支持

中等图像的 mdpi 支持具有最大分辨率的设备的 xhdi 图像文件夹。

Android OS 通过检查兼容设备及其分辨率来选择自己的图像。

希望能帮助到你。如果您得到解释,请接受。

于 2012-05-09T13:51:07.623 回答
7

可绘制的 ldpi

可绘制的 mdpi

可绘制的 hdpi

可绘制的 xhdpi

可绘制的 tvdpi

可绘制的nodpi

可绘制-xxhdpi

可绘制的xxxhdpi

We can also use "drawable-xxhdpi"
xxhdpi (480dpi, Android 4.1 or later)

请参阅以下链接中的“Android表格列”

http://en.wikipedia.org/wiki/Smartphone

请参考以下链接(xxxhdpi)中的“表1”

http://developer.android.com/guide/practices/screens_support.html#xxxhdpi-note

注意:drawable-xxxhdpi 限定符仅用于提供一个在 xxhdpi 设备上看起来比平常更大的启动器图标。您不需要为所有应用程序的图像提供 xxxhdpi 资产。

注意将在以下链接中 http://developer.android.com/design/style/iconography.html#xxxhdpi-launcher

于 2013-04-01T09:43:28.897 回答
1

您应该使用drawable-hdpi文件夹而不是drawable-large.

支持多个屏幕页面可能对您有帮助

于 2012-05-09T13:49:59.153 回答
1

实际上有 4 种屏幕分辨率标准 - 检查此链接以获取更多信息http://developer.android.com/guide/practices/screens_support.html,下表。当您在设备上安装应用程序时,设备会返回这些标准之一并从相应文件夹中选择资源 - ldpi、mdpi、hdpi 和 xhdpi

于 2012-05-09T13:51:59.623 回答
0

1)不同drawable文件夹背后的原因-通过适应每个设备的屏幕密度来增强用户在使用我们的应用程序时的体验。

2)“我应该在哪里存储......” - 理想情况下,您可以为每个存在的屏幕密度存储具有适当尺寸的图像。如果您是初学者,只需使用一个文件夹,现在不用担心。

4)图像缩放这是一个很酷的指南,可以帮助您在应用程序内进行图像缩放: https ://thoughtbot.com/blog/android-imageview-scaletype-a-visual-guide

3) 链接: https ://material.io/tools/devices/ - 所有设备和密度的列表

于 2017-06-09T13:05:46.767 回答