从Android 4.3(Jelly Bean)开始,我们现在可以利用这些res/mipmap文件夹来存储"mipmap"图像.
例如,Chrome for Android将其图标存储在这些文件夹中,而不是更常用的res/drawable文件夹中.
这些mipmap图像与其他熟悉的可绘制图像有何不同?
我看到在我的清单中,我们使用@mipmap/限定符,而不是@drawable/,这对于资源文件夹名称是有意义的:
<activity
android:name=".MipmapDemp"
android:icon="@mipmap/ic_launcher" />
Run Code Online (Sandbox Code Playgroud)
在Android 4.3的API的文档具有下面要说:
使用mipmap作为位图或drawable的源是提供高质量图像和各种图像比例的简单方法,如果您希望在动画期间缩放图像,这可能特别有用.
Android 4.2(API级别17)在Bitmap类中添加了对mipmap的支持 - 当您提供了mipmap源并启用了setHasMipMap()时,Android会在您的Bitmap中交换mip图像.现在在Android 4.3中,您还可以通过提供mipmap资源并在位图资源文件中设置android:mipMap属性或通过调用hasMipMap()来为BitmapDrawable对象启用mipmaps.
我没有看到任何有助于我理解的东西.
XML Bitmap资源具有以下android:mipMap属性:
布尔.启用或禁用mipmap提示.有关更多信息,请参见setHasMipMap().默认值为false.
就我所见,这不适用于启动器图标.
问题出现在Google网上论坛(资源名称"mipmap"的目的?!)上,Romain Guy回复道:
提供通常可以计算的更大分辨率的图像很有用(例如,在mdpi设备上,Launcher可能希望更大的hdpi图标显示大型应用程序快捷方式.)
我觉得这几乎是有意义的,但并不完全.
我仍然倾向于选择Randy Sugianto的跟进:
这有什么好处?是否有任何指南如何使用mipmap,可能是为了更好的启动器图标?
当然,维基百科有一个"Mipmap"页面,它指的是一种1983年发明的旧技术,我无法与当前的Android实现相关联.
我们现在应该将所有应用程序图标res/mipmap存储在文件夹中吗?这些mipmap图像的准则是什么?
更新#1
这是一篇博文,试图解释一下.
但是该博客文章中使用的图像显示了一个包含许多徽标的文件.这不是我在Chrome的mipmap文件夹中看到的.
Chrome的mipmap-hdpi文件夹包含三张图片.一个是Chrome徽标,单独使用.

奇怪的是,它是72x72,而不是48x48,我希望看到.
也许这就是全部 - 我们只需要在mipmap文件夹中保留更大的图标?
更新#2
2014年10月23日的Android开发者博客文章再次证实了将mipmap文件夹用于应用程序图标的想法:
我有一个全屏PNG,我想在飞溅中显示.只有一个错误,我不知道该怎么把大小在每个绘制的文件夹(ldpi,mdpi,hdpi,和xhdpi).我的应用程序应该在所有手机和平板电脑上运行良好和美观.我应该创建什么尺寸(以像素为单位),以便在所有屏幕上显示漂亮的效果?
在Android Studio中,我无法确定在应用程序中放置图像的位置.drawable文件夹没有分解为drawable-hdpi,drawable-ldpi等.我看到了另一个问题,答案是切换到Project视图而不是Android视图,但drawable只有一个文件夹.有mipmap-hdpi,mipmap-ldpi等,但人们都说这只适用于app图标.我糊涂了.
我从Android开发者中心下载了图标集合 此集合中的每个图标都根据其分辨率在forlders中排序:drawable-hdpi,drawable-mdpi,drawable-xhdpi,drawable-xxhdpi.
有没有办法将一个动作中的所有4个图标文件导入Android Studio,或者我需要逐个复制它?(当我使用new-> Image Asset时,我必须填写文件路径,我无法用文件夹路径填充它)
更新25/2/15:
根据这个问题,似乎有一种方法可以通过Android Asset Studio生成4个大小的图标,然后将zip文件直接导入到您的Android Studio项目res文件夹中 - 有没有人使用它?
嗨,根据Android文档,drawable文件夹需要有不同dpis图像的多个子目录.但是在Android Studio中,在drawable文件夹中创建任何子目录会导致它无法检测到任何图像.另一方面,如果图像直接放在drawable文件夹中,它将被检测到并可用于查看R.drawable.ImageName.在这种情况下,我们如何为同一个ImageName使用不同的dpi图像?
我找到了这个Asset Studio来生成图标.它适用于启动器图标,但对于操作栏或通知图标,它不起作用.我输入了我的png文件并想生成图标,但Asset Studio只生成灰色圆圈.是否有其他工具可以生成操作栏和通知图标?

我正在使用Android Studios 1.5
我试图做一些非常简单的事情:在我的项目中添加一个大图像,我将用作MainActivity的背景.当我右键单击res-> Add-> Image Asset并选择"Action Bar and Tab Icons"并将其指向我的图像时,它会呈现完全空白的矩形,如下所示:
我究竟做错了什么?我已经阅读了几个不同的页面,没有其他人遇到过这个问题.
我打算在游戏中使用以下图像:
当我使用"添加新图像资源"并将此图像添加为"操作栏和选项卡图标"时
图像的所有黑色部分都替换为白色,因此在画布上绘制时图像看起来像这样:
为什么图像会被破坏,我该如何解决?
我想过将图像作为"启动器图标",但这似乎没有意义.
我试图在我的应用程序中集成不同的图像大小,但问题是在Android Studio中没有drawable-Idpi,mdpi,hdpi,xhdpi文件夹.我已经检查了其他线程,答案是我只需要跳到Project视图而不是Android视图.但结果是一样的.只有一个名为drawable的generale文件夹


如果我尝试添加另一个资源文件夹,则缺少drawable.

我从https://github.com/nglauber/playground/tree/master/android/DemoSearch分叉了一个GitHub项目
我想将搜索图标的颜色设置为纯白色.目前,搜索图标为灰色,明显不同于"演示搜索"的白色文本.
编辑:
基于一些建议,我使用纯白色(确切地说,RGB = 255,255,255)创建了一个新图标,并使用它代替android:ic_menu_search.Android将使用灰色调(使用屏幕截图中的颜色选择器工具进行验证)对其进行着色,即使原始图标为纯白色.
这告诉我Android正在故意调整图标.我希望有一些方法可以控制设置或更改Android工具栏中的图标颜色.