mipmap和drawable文件夹的区别

简介: 同步发布在: http://snowdream.github.io/blog/2016/03/02/mipmap-vs-drawable-folders/ 现在,通过Android Studio创建Android工程,默认会创建mipmap文件夹,而不是以前的drawable文件夹。那么mi

同步发布在: http://snowdream.github.io/blog/2016/03/02/mipmap-vs-drawable-folders/

现在,通过Android Studio创建Android工程,默认会创建mipmap文件夹,而不是以前的drawable文件夹。那么mipmap和drawable文件夹到底有什么区别呢?

定位不同

mipmap文件夹下的图标会通过Mipmap纹理技术进行优化。关于Mipmap纹理技术的介绍,请参考:Mipmap纹理技术简介

经过查询官方和第三方资料,得出结论:

mipmap文件夹下,仅仅建议放启动图标/app launcher icons,也就是应用安装后,会显示在桌面的那个图标。而其他的图片资源等,还是按照以前方式,放在drawable文件夹下。

下面再详细阐述下,得出以上结论的依据:
1.google官方关于mipmap和drawable的定位

drawable/

For bitmap files (PNG, JPEG, or GIF), 9-Patch image files, and XML files that describe Drawable shapes or Drawable objects that contain multiple states (normal, pressed, or focused). See the Drawable resource type.

mipmap/

For app launcher icons. The Android system retains the resources in this folder (and density-specific folders such as mipmap-xxxhdpi) regardless of the screen resolution of the device where your app is installed. This behavior allows launcher apps to pick the best resolution icon for your app to display on the home screen. For more information about using the mipmap folders, see Managing Launcher Icons as mipmap Resources.

2.stackoverflow上关于mipmap和drawable的区别

The mipmap folders are for placing your app icons in only. Any other drawable assets you use should be placed in the relevant drawable folders as before.

用法不同

以ic_launcher为例。
1.放在mipmap文件夹下时,引用方式如下:

android:icon="@mipmap/ic_launcher"

R.mipmap.ic_launcher

2.放在drawable文件夹下时,引用方式如下:

android:icon="@drawable/ic_launcher"

R.drawable.ic_launcher

参考

  1. Mipmap纹理技术简介
  2. mipmap vs drawable folders
  3. google官方关于mipmap和drawable的定位
相关文章
|
人工智能 自然语言处理 算法
国产新型AI编程助手—DevChat AI插件在VSCode中的应用
国产新型AI编程助手—DevChat AI插件在VSCode中的应用
1380 0
|
7月前
|
传感器 数据采集 人工智能
WebGL 数字孪生项目的流程
WebGL/WebGPU正成为智慧城市、工业4.0数字孪生主流技术。本文详解从倾斜摄影/BIM建模、DRACO轻量化、PBR渲染,到Three.js/Cesium引擎选型、实时IoT对接、LOD优化及AI智能诊断的全链路开发实践。(239字)
|
10月前
|
安全
HTTP协议中请求方式GET 与 POST什么区别
简介:GET和POST是项目开发中最常见的两种请求方式。GET通过URL传递参数,长度受限且安全性低,适用于获取数据;POST通过请求体传参,更安全,适合提交数据。现代项目多采用RESTful风格,统一通过URL定位资源,结合GET、POST、PUT、DELETE等方法实现资源操作,结构清晰、易于维护。
|
机器学习/深度学习 人工智能 自然语言处理
《揭开DeepSeek神秘面纱:复杂逻辑推理背后的技术机制》
DeepSeek是一款基于Transformer架构的大语言模型,以其在复杂逻辑推理任务上的卓越表现成为行业焦点。它通过自注意力机制高效捕捉长距离依赖关系,结合强化学习优化推理策略,利用思维链技术拆解复杂问题,并经过多阶段训练与精调提升推理能力。此外,DeepSeek融合知识图谱和外部知识,拓宽推理边界,使其在处理专业领域问题时更加准确和全面。这些先进技术使DeepSeek能够像人类一样思考和推理,为解决复杂问题提供强大支持。
1320 11
|
机器学习/深度学习 人工智能 自然语言处理
【人工智能】学习人工智能需要学习哪些课程,从入门到进阶到高级课程区分
基于人工智能的多学科特性和其广泛的应用领域,学习这一技术涉及从基础理论到实践应用的各个层面。入门阶段应重点掌握数学基础、编程语言学习以及数据结构和算法等。进阶阶段需要深入机器学习、深度学习以及自然语言处理等专题。高级课程则包括专业核心课程、认知心理学与神经科学基础以及计算机图形学等课程
1665 1
|
算法 安全 Java
浅析五种最常用的Java加密算法,以后可以直接拿来用了
信息加密是现在几乎所有项目都需要用到的技术,身份认证、单点登陆、信息通讯、支付交易等场景中经常会需要用到加密算法,所谓加密算法,就是将原本的明文通过一系列算法操作变成密文。接下来就介绍一下目前比较常用的一些加密算法,本期不涉及算法底层,以应用介绍和代码展示为主。 如果只想了解原理,可跳过代码部分,代码可直接拿来使用。
3422 0
|
前端开发 JavaScript API
React、Vue.js 和 Angular前端三大框架对比与选择
前端框架是用于构建用户界面的工具和库,它提供组件化结构、数据绑定、路由管理和状态管理等功能,帮助开发者高效地创建和维护 web 应用的前端部分。常见的前端框架如 React、Vue.js 和 Angular,能够提高开发效率并促进团队协作。
2061 4
|
编解码 负载均衡 监控
RPC远程调用
RPC远程调用
|
人工智能 机器人 数据安全/隐私保护
计算巢AppFlow实现模型对话流式输出
使用AppFlow现在可以实现大模型对话在钉钉群聊中的流式输出效果,无需编程,只需简单几步配置。首先在钉钉开放平台创建应用,获取Client ID和Client Secret。接着在钉钉卡片平台创建AI卡片实例,关联之前创建的应用。然后在AppFlow中选择模板创建连接流,配置钉钉卡片模版ID和WebhookUrl,发布连接流。最后在钉钉应用中设置机器人,选择HTTP模式并填入WebhookUrl,发布应用。完成这些步骤后,即可在钉钉群中与通义千问、通义百炼模型进行流式对话。如有问题,可加入官方支持钉钉群咨询。
1006 13

热门文章

最新文章