Android Studio官方文档之使用Image Asset Studio添加位图图像

本文由nyk翻译,jkYihson审校.

前言

Android Studio中有一个工具叫Image Asset Studio,它可以把已有的图像、剪贴画、文本字符串资源生成你app的自定义的图标。它生成的图标会对你App支持的每一种常见的屏幕密度有良好的支持。新生成的图标放置在/res文件夹下和屏幕密度相关的子文件夹下(例如mipmap-mdpi/drawable-xxxhdpi/)。在运行时,系统会根据运行App的设备的屏幕密度来使用合适的资源。

Image Asset Studio可以生成以下的资产类型:

  • launcher 图标
  • ActionBar和标签图标
  • 通知图标

下文将指导你如何用Image Asset Studio生成这些资产资源。

访问Image Asset Studio

执行以下步骤将打开Image Asset Studio:

  1. 在Android Studio中打开一个Android应用工程
  2. 在屏幕左边的Project窗口中,点开下拉菜单选中Android。Android结构的工程视图就会出现在板面中。
  3. 右击res/文件夹选择New–>Image Asset。Image Asset Studio窗口就会出现

创建图标

你可以用图像、剪切图、文本资源生成图标。这部分描述它们中每一种如何执行。

用图像生成

  1. 打开Asset Type下拉菜单选择icon类型
  2. 从可见的Foreground选项中,选Image
  3. Image file中输入资产文件的文件名,通过文件夹浏览器为资产文件选择一个源文件。Image Asset Studio支持以下的文件类型,降序排列:PNG,JPG,GIF。即将生成的图标以对应不同的屏幕密度的尺寸显示在Preview板面中
  4. 保存图标到你的工程文件夹下

用剪切图生成

  1. 打开Asset Type下拉菜单选择icon类型
  2. 从可见的Foreground选项中,选Clipart,然后Choose按钮就会显示
  3. 点击Choose,一个包含剪切图资源的窗口就会显现
  4. 选择一个剪切图。即将生成的图标以对应不同的屏幕密度的尺寸显示在Preview板面中
  5. 保存图标到你的工程文件夹下

用文本生成

  1. 打开Asset Type下拉菜单选择icon类型
  2. 从可见的Foreground选项中,选Text
  3. Text中输入你想转化成图标的文本。即将生成的图标以对应不同的屏幕密度的尺寸显示在Preview板面中
  4. Font下拉菜单中选择一个字体来改变文本的字体
  5. 保存图标到你的工程文件夹下

定制图标

Image Asset Studio使你能定制各种不同的视觉效果到图标上。以下选项需要特别注意

  • Trim surrounding blank space:这个选项能使你调整图标和边界的幅度

  • Additional Padding:这个选项能使你调整图标和四边之间的填充距离。滑动滑块在0到100px中选择一个值。例如,对一个100px X 100px的图像有25px的填充,那个最终的图像就是150px X 150px
  • Theme:这个选项能使你为action bar或标签图标设置一个主题。你可以用HOLO_DARK、HOLO_LIGHT主题或自定义主题,从色板中取色来为图标着色。
  • Resource name:这个能使你为资源指定一个名字,如果这个名字的资产文件已经存在,Image Assert Studio会提示你会覆盖原来有的资产文件

保存图标

这部分描述怎样保存图标到res/文件夹下。按以下步骤执行:

  1. 从你打开Image Asset Studio的第一个界面开始,点击next,就会打开一个新窗口
  2. 为图标确认目标Module和资源目录,如果你不想用默认的Module和资源目录,你可以自己输入
  3. 点击Finish。Image Asset Studio就会按照你之前的选项生成新的PNG格式的图标文件

    注意:Launcher图标所在的文件夹和其他图标所在的文件夹不同,Launcher图标在mipmap/文件夹下, 其他的图标在/drawable文件夹下

配置编译属性

执行以下步骤来改变module和资源目录的配置

  1. Target Module选项中,选择一个Module来添加图标资源。更多信息,请查看添加一个Module到新设备
  2. Res Directory选项中,选择图像资产放置的位置

    • src/main/res:这个资源目录应用到所有编译的种类,包括debug编译和release编译
    • src/debug/res, src/release/res:这些资源目录在对应种类的版本编译中会覆盖主资源目录
    • 自定义:选择File > Project Structure > app > Build Types来定义自己的资源目录。例如,你想定义一个beta资源目录并且创建一个右下角有“BETA”字样的图标。更多信息,请查看使用不同的编译种类

在代码中引用图像资源

在你工程的/res目录已经有一个图像资源后,你可以在Java代码和xml文件中用资源id来引用图像资源。

例如,以下是在XML中引用mipmap目录下的ic_launcher图标:

<application android:name="ApplicationTitle"android:label="@string/app_label"android:icon="@mipmap/ic_launcher" >

以下是在Java代码中设置ImageView为drawable/myimage.png:

ImageView imageView = (ImageView) findViewById(R.id.myimageview);
imageView.setImageResource(R.drawable.myimage);

把Launcher图标作为mipmap资源

不同设备的不同主屏的Launcher在各种分辨率上显示App图标。当App资源优化技术且删除不常用的屏幕密度相关的资源时,Launcher图标可能会看起来模糊, 因为Launcher App不得不扩大低分辨率的图标尺寸用于显示。为避免这些问题,App需把Launcher图标放在mipmap/下。不管屏幕密度如何碎片化Android系统会保留这些资源并且Launcher会选择一个最佳分辨率的图标用以显示。

把所有密度的Launcher图标移动到res/mipmap/目录下相应密度的子文件夹下(例如res/mipmap-mdpi/和res/mipmap-xxxhdpi/)会确保Launcher会为你的App显示高分辨率的图标。对于launcher 图标mipmap/文件夹替换了drawable/文件夹。对于xxhpdi的launcher图标,请务必添加更高分辨率的xxxhdpi图标以提升图标的在高分辨率的设备上的视觉体验。

注意:即使你编译一个APK,运行在所有设备上,把launcher图标放在mipmap/文件夹下仍是最好的选择

清单文件升级

当你移动launcher图标到mipmap-[density]文件夹下时,需要把清单文件中引用launcher图标的地方改成引用mipmap/下的图标。以下例子改成了引用mipmap/下ic_launcher的图标

<application android:name="ApplicationTitle"android:label="@string/app_label"android:icon="@mipmap/ic_launcher" >

Android Studio官方文档之使用Image Asset Studio添加位图图像相关推荐

  1. Android Studio官方文档之添加URL和App索引支持

    Android Studio官方文档之添加URL和App索引支持 本文由nyk翻译,jkYishon审校. Android Studio可以帮你在App中添加对URLs,app索引,搜索功能的支持.这 ...

  2. 【开源项目推荐】Android Jetpack 官方文档 中文翻译

    Jetpack 是 Android 软件组件的集合,使您可以更轻松地开发出色的 Android 应用.这些组件可帮助您遵循最佳做法.让您摆脱编写样板代码的工作并简化复杂任务,以便您将精力集中放在所需的 ...

  3. android mvvm官方文档,MVVM: 这是一个android MVVM 框架,基于谷歌dataBinding技术实现

    MVVM 这是一个android MVVM 框架,基于谷歌dataBinding技术实现.dataBinding 实现的 V 和 VM的关联:使用IOC架构实现了 M 和 V的关联. 框架具有以下功能 ...

  4. Android HIDL 官方文档(七,END)—— 网络堆栈配置工具(Network Stack Configuration Tools)

    网络工具封装 网络工具封装过滤器 1 供应商接口与链 2 允许使用的命令 21 ip 22 iptables ip6tables 23 ndc 24 tc 对应的官方文档地址:HIDL(General ...

  5. Android 重读官方文档 1

    刚开始学习安卓的时候,看的最多的就是官网了. 这几天可能比较空,所以想再看看,温故知新,希望有所收获. 多入口 Android 不同于以往的单一入口程序,例如 C++ 或者是 Java,都只有一个 m ...

  6. Android Design 官方文档离线版(英文)!

    将官网的内容编辑成PDF,方便离线阅读,与大家分享! 下载地址:http://115.com/file/e7k1yr82#Download http://pan.baidu.com/netdisk/s ...

  7. android findbugs官方文档,Android代码质量 FindBugs 规则

    FindBugs 规则 FindBugs是基于Bug Patterns概念,查找javabytecode(.class文件)中的潜在bug,主要检查bytecode中的bug patterns,如Nu ...

  8. Android的AutoCompleteTextView在API17高版本添加的setText函数在低版本系统居然能正常调用?官方文档是不是不靠谱了?...

    官方文档:https://developer.android.com/reference/android/widget/AutoCompleteTextView.html#setText(java.l ...

  9. 【Android 命令行工具】Android 命令行工具简介 ( 官方文档 | SDK 命令行工具 | SDK 构建工具 | SDK 平台工具 | 模拟器工具 | Jetifier 工具 )

    文章目录 一.官方文档 二.Android 命令行工具简介 1.SDK 命令行工具 2.SDK 构建工具 3.SDK 平台工具 4.模拟器工具 5.Jetifier 工具 一.官方文档 Android ...

最新文章

  1. 华为对边缘计算的思考与理解
  2. oracle 最近的sql语句,oracle最近执行的sql语句
  3. windows 访问linux中的mongodb,MongoDB的linux系统下的安装与连接
  4. 关于PS插件Nik Collection不兼容cc2021闪退的解决方法
  5. 深度学习高能干货:手把手教你搭建MXNet框架
  6. MVVM项目中的动态DataGrid单元样式
  7. click group实例
  8. influxdb入库mysql_InfluxDb(3)基本操作
  9. 8个成功秘笈(针对所有人)
  10. Leetcode 刷题笔记(二十九) ——动态规划篇之子序列问题:编辑距离
  11. java 获取文件的全路径
  12. word文档通配符换行_这个小工具,让你word操作效率翻倍
  13. 【机器学习】python实现非线性回归(以中国1960-2014GDP为例)
  14. SystemUI 布局
  15. 360企业安全校招内推(可免笔试)
  16. python调研报告总结体会_调查报告的心得体会
  17. 手机端省市区三级联动
  18. The Matrix(黑客帝国)
  19. 多项式A除以B(PTA)
  20. DOM节点层次之Node类型

热门文章

  1. CSS中的flax布局
  2. 这些年,我考过的计算机相关资格证,哪些是金子哪些是渣渣
  3. mybatis入门之XML配置 idea版(含目录结构与sql语句)
  4. 综述 | 持续学习,如何解决分类问题中灾难性遗忘
  5. android工程iml文件,Android8.1 源码编译.ipr .iml 文件
  6. 国内top5正规好用纸黄金交易软件最新排名(2023评测版)
  7. Idea设置jdk1.8中文提示
  8. ffplay 播放字幕以及lrc歌词
  9. centos7合并home分区到root分区
  10. 10 x visum ST 预处理 python可视化