★11.Resource

颜色


    #7fff00ff

字符串

简单示例


    AppName

格式化字符串

number:%d
getResources().getString(R.string.str, /* 参数包 */);

复数字符串

方案一

简介

  • 此方案仅适用于英文系统。

xml


    %d zero!
    %d one!
    %d other!

代码

String str = getResources().getQuantityString(R.plurals.item, /* 数量 */, /* 匹配通配符 */);

方案二

简介

  • 使用java.text.MessageFormat

xml

{0,choice,0#0 item|1#1 item|1<{0} items}

代码

String str = MessageFormat.format(getResources().getString(R.string.item), /* 数字 */);

解说

  • \<<的转义字符。
  • 0#代表等于0
  • 1<代表大于1

布局引用

应该减少使用include,因为布局文件应当直观清晰。


别名资源

给资源设置别名,必须定义在 values/refs.xml 中:



    @layout/activity_fragment

引用资源

  • 对于不同命名空间下的引用必须包含命名空间,如:android:Theme.Holo
  • 对于同一命名空间下的引用可以不用包含命名空间,如:Theme.AppCompat
  • @xxx用于指向 xxx 资源。
  • ?xxx用于使用 xxx 指向的资源。

资源修饰符

  • 资源修饰符 :指资源文件名称的后缀,对于特定后缀的资源只在特定情况下生效,否则使用默认无后缀版资源文件。可以使用右键创建,在创建时可以选择想要的 资源修饰符
    • -swXXXdp:在最小宽或高达到 XXXdp 时生效。
    • -wXXXdp:宽度大于等于 XXXdp
    • -hXXXdp:高度大于等于 XXXdp

mipmap目录

类似 drawable 目录,但是 APK分包工具 (可用于根据清晰度,将资源图片分开成几个包, mdpi APK 一个, hdpi APK 一个等等)会调过 mipmap 目录,所以 mipmap 通常用于存放同一设备需要多套资源的东西,如应用启动图标。其他资源应该放进 drawable 目录。

你可能感兴趣的:(★11.Resource)