[免责声明:首先我知道有很多关于drawable和mipmap文件夹的帖子,我读了一堆下降的帖子]
从Android编程 - 大书呆子牧场指南一书中,有一个例子,我必须在Button
的某些文字旁边插入一个图标。对于更高分辨率的屏幕,包含多个尺寸的图标是有意义的。在他们的解决方案中,他们将所有图像放在许多不同的Drawable文件夹中,并且图像的分辨率大小不同。
我通过在大量试验和错误之后将图标放在drawable文件夹中以使其在mipmap文件夹中工作来实现它:
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/next_button"
android:text="@string/next_button"
android:drawableRight="@drawable/arrow_right/"/>
然而,我对它的运作方式感到困惑:
从here我得到了一些困惑:
mipmap文件夹仅用于放置您的应用图标。
这是什么意思?从谷歌翻译我得到:
图标:程序,选项或窗口的屏幕上的符号或图形表示,尤指用于选择的几个中的一个。
答案 0 :(得分:12)
我终于明白了mipmap和drawable文件夹之间的区别,看看official google documentations of the resource folder(res /).
他们说何时使用mipmap:
不同启动器图标密度的可绘制文件。有关使用mipmap /文件夹管理启动器图标的更多信息,请参阅管理项目概述。
什么时候把东西放在你的可绘制文件夹中:
位图文件(.png,.9.png,.jpg,.gif)或编译的XML文件 进入以下可绘制资源子类型:
位图文件
- 列表项
- Nine-Patches(重新调整大小的位图)
- 州列出形状 动画
- drawables
- 其他绘图
- 参见Drawable Resources
另外值得注意的是,默认情况下,启动器图标有多个具有不同分辨率的文件夹,但对于可绘制文件夹则没有。 Android OS使用特殊名称查找这些文件夹,称为限定符。例如,对于drawable文件夹,有以下限定符和更多:
这些限定符附加到这些资源文件夹名称,如drawable-ldpi,drawable-hdpi和drawable-xdpi,因此android操作系统将查看这些文件夹以找到文件夹中文件的最佳分辨率。
希望这有助于任何人。我发现很难找到。
答案 1 :(得分:0)
https://developer.android.com/training/multiscreen/screendensities#mipmap 根据官方文件, Mipmap应该用于启动器图标。可以将其他可绘制对象添加到特定于密度的可绘制文件夹中。