mipmap和drawable文件夹

时间:2017-08-18 07:37:32

标签: android android-drawable android-mipmap

我是新人。我有两个问题:

  1. 如果我将图像放在drawable中,则假设它是mdpi,但如果我的应用程序在xxhdpi设备中运行,那么app会停止发生什么事情?

  2. 要解决1.我把图像放在mipmap / xxhdpi(仅在xxhdpi文件夹中),现在xxhdpi设备没问题,但在hdpi平板电脑(太大)图像看起来不对(丑)我能做什么?要解决这个问题吗?

  3. 这是它在平板电脑中的样子 enter image description here

5 个答案:

答案 0 :(得分:1)

将所有.png图片添加到

1. drawable-hdpi
2. drawable-mdpi
3. drawable-xhdpi
4. drawable-xxhdpi

它自动适合运行它的所有设备!

答案 1 :(得分:0)

回答
1. mipmap-个文件夹用于ic_launcher.png个图像(启动器图标) 2. Android系统首先在其匹配密度文件夹中找到图像,如果它无法在其匹配密度文件夹中找到图像,则它会从最近的文件中找到图像 - 匹配密度文件夹和
如果图像小于密度,则会扩大,另一种情况是,它会缩小图像的尺寸。

所以在此期间,系统使用太多内存来加载图像,这就是应用程序崩溃的原因。将图像放在每个密度文件夹中可能会很无聊,但是你必须为系统做这项工作。


更好的解决方案
您可以使用9-patch图像或Vector(svg)图像。

  • 您可以将9张补丁图像与其他图像一样放入每个密度文件夹中。
  • 矢量(svg)图片,你可以通过这个>> right click on res/drawable > new > Vector Asset > select 'Local file' > Finish

提示
1.使用JPEG格式的图像,它们是最小的,并且足够好用于应用程序 2.如果可能,请创建SVG文件并将其仅放入drawable文件夹一次。这将是最有效的方式。

答案 2 :(得分:0)

要解决此问题,您应该根据移动设备的屏幕分辨率将图像放在相应的可绘制文件夹中。 以下是参考设备名称的屏幕分辨率。

屏幕分辨率:

480x800 - drawable-hdpi - Sony Expedia
600x1024 - drawable-large-hdpi - Samsung tab2
720x1280 - drawable-xhdpi - Samsung s3
800x1280 - drawable-large-tvdpi - Nexus 7 tab
1080x1920 - drawable-xxhdpi - S4,Nexus5
1200x1920 - drawable-large-xhdpi - New nexus 7
1440X2560 - drawable-xxxhdpi - Nexus 6,Samsung S6edge

答案 3 :(得分:-1)

您可以创建一个九贴片图像,为您提供所有可绘制尺寸的图像

答案 4 :(得分:-1)

将所有图像添加到

drawable-hdpi
drawable-mdpi
drawable-xhdpi
drawable-xxhdpi

mipmap-hdpi
drawable-mdpi
drawable-xhdpi
drawable-xxhdpi  

它会自动适合所有设备。

如果图像太大,那么你可以 也将图像转换为微小图像,然后将图像放入

drawable-nodpi

它还会减小apk尺寸并适合所有设备,当然你也可以使用9个补丁图像,它会为你提供所有可绘制尺寸的图像。

希望它对你有所帮助。