首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么Android要在res/draable-v24中创建ic_launcher_foreground,在res/ ic_launcher_background.xml中创建ic_launcher_background.xml?

为什么Android要在res/draable-v24中创建ic_launcher_foreground,在res/ ic_launcher_background.xml中创建ic_launcher_background.xml?
EN

Stack Overflow用户
提问于 2019-08-02 12:50:39
回答 2查看 2.9K关注 0票数 7

第一

我注意到在Android中创建一个新项目时,它会生成带有drawable-v24图标的ic_launcher_foreground.xml文件夹。

我的问题是:

  1. 如果向量可绘制是在v24之前引入的,那么为什么它将向量资产放在drawable-v24而不是drawable-v21文件夹中呢?

二次

另一个生成的资产是ic_launcher_background.xml,它是在res/drawable文件夹中创建的,后来从mipmap-anydpi-v26/ic_launcher.xml中引用。

  1. 如果它只在API v26+ (自适应图标)中使用,那么为什么它是在res/drawable文件夹中创建的,而不是在res/drawable-v24res/drawable-v26中创建的?是因为mipmap文件夹的某些特性吗?
EN

回答 2

Stack Overflow用户

发布于 2020-05-15 08:04:12

虽然VectorDrawable特性是从API-21引入的,但它在API-24中还是有点集成的。我认为Google的开发者认为API-24+对于适应性图标来说是理想的或稳定的。

例如,尼克·布彻(Android designer + developer @ Google)在他的文章中写道:在Android应用程序中使用向量资产 (2018年12月11日),

  • nonZero和evenOdd path fillTypes -the两种常用的定义形状内部的方法,常用于SVGs ( API 24中添加到平台impl中的evenOdd)。
  • 渐变& ColorStateList填充/笔画(在API 24中添加到平台impl中)

关于ic_launcher_background,它仅引用于mipmap-anydpi-v26/ic_launcher.xmlmipmap-anydpi-v26/ic_launcher_round.xml。我认为这只是没有必要阻止直接引用它(通过将ic_launcher.xmlic_launcher_round.xml放在mipmap-anydpi-v26文件夹中已经阻止了)。不应该有更多,更深刻的意义。

票数 2
EN

Stack Overflow用户

发布于 2021-03-01 14:57:37

一个codelab回答你的问题。

根据应用程序的min,您可能会注意到前台资产位于draable-v24文件夹中,而后台资产位于可绘图文件夹中。原因是前景资产包含一个渐变,从Android7.0发行版(也称为also 24,因此是-v24资源限定符)中可以获得。背景资产不包含渐变,因此可以放在基绘图文件夹中。

顺便提一句,虽然我们通常不会将ic_launcher_background.xml用于除应用程序图标之外的任何用途,但它只是一个可绘制的矢量,其使用是不受限制的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57326843

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档