如果您想将某一资源用于多种设备配置(但是不想作为默认资源提供),则无需将同一资源放入多个备用资源目录中。 相反,您可以(在某些情况下)创建备用资源,充当保存在默认资源目录下的资源的别名。

注:并非所有资源都会提供相应机制让您创建指向其他资源的别名。 特别是,xml/ 目录中的动画资源、菜单资源、原始资源以及其他未指定资源均不提供此功能。

例如,假设您有一个应用图标 icon.png,并且需要不同语言区域的独特版本。 但是,加拿大英语和加拿大法语这两种语言区域需要使用同一版本。 您可能会认为需要将相同的图像复制到加拿大英语和加拿大法语对应的资源目录中,但事实并非如此。 相反,您可以将用于二者的图像另存为 icon_ca.png(除 icon.png 以外的任何名称),并将其放入默认 res/drawable/ 目录中。然后,在 res/drawable-en-rCA/ 和 res/drawable-fr-rCA/ 中创建 icon.xml 文件,使用 元素引用 icon_ca.png 资源。这样,您只需存储 PNG 文件的一个版本和两个指向该版本的小型 XML 文件。(XML 文件示例如下。)

可绘制对象
要创建指向现有可绘制对象的别名,请使用 元素。例如:

<?xml version="1.0" encoding="utf-8"?>

如果将此文件另存为 icon.xml(例如,在备用资源目录中,另存为 res/drawable-en-rCA/),则会编译到可作为 R.drawable.icon 引用的资源中,但实际上它是 R.drawable.icon_ca 资源(保存在 res/drawable/ 中)的别名。

布局
要创建指向现有布局的别名,请使用包装在 中的 元素。例如:

<?xml version="1.0" encoding="utf-8"?>    

如果将此文件另存为 main.xml,则会编译到可作为 R.layout.main 引用的资源中,但实际上它是 R.layout.main_ltr 资源的别名。

字符串和其他简单值
要创建指向现有字符串的别名,只需将所需字符串的资源 ID 用作新字符串的值即可。例如:

<?xml version="1.0" encoding="utf-8"?>    Hello    @string/hello

R.string.hi 资源现在是 R.string.hello 的别名。

其他简单值的原理相同。 例如,
颜色

<?xml version="1.0" encoding="utf-8"?>    #f00    @color/red

更多相关文章

  1. android中访问和解析xml文件
  2. Android(安卓)Studio Lint 自动检查清除冗余资源
  3. Android之Application Resources(应用程序资源)
  4. [置顶] AIDL旅行记之AIDL的简单使用
  5. Android(安卓)Trick 6: PendingIntent的重复问题,当新建的Pending
  6. android 创建socket失败
  7. 34.如何获取app(apk和ipa)中的资源
  8. Android常用名令集锦(图文并茂)
  9. Android(安卓)Activity启动流程分析--------基于Android(安卓)O

随机推荐

  1. SpringBoot中的自动代码生成 - 基于Mybat
  2. rsync实现服务器数据同步备份
  3. NoSQL Memcached
  4. 2018年5大微服务发展趋势
  5. 堡垒机介绍
  6. 锂离子电池安全事故:安全性问题,还是可靠性
  7. NoSQL Redis
  8. 虚拟化 VMware ESXi(二)
  9. 虚拟化 KVM
  10. msqly