• Android 为不同的语言和硬件创建资源


    外置资源一个很重要的原因是Android的动态资源选取机制。

     

    使用下面描述的结构,你可以为指定的语言、区域和硬件配置创建不同的资源值,供Android系统在运行时动态选取。

     

    这能让你创建指定语言、区域和硬件的用户界面,而不需要更改你的代码。

     

    通过在/res文件夹下设置平行的文件夹来设定供选择的资源,使用“-”分割符来指定应用程序支持的条件。

     

    下面的层次例子,显示了文件夹结构,包括默认的字符串值,法语字符串值和额外的加拿大地区的法语字符串值。

     

    Project/

    res/

    values/

    strings.xml

    values-fr/

    strings.xml

    values-fr-rCA/

    strings.xml

     

    下面的列表给出了你可以用来定制资源文件名的标识符:

     

    语言                          两个小写的ISO 639-1语言代号(例如,en

    区域                        小写“r”,后跟两个大写的ISO 3166-1-α-2 语言代号

     (例如,rUSrGB

    屏幕方向              port”(portrait)、“land”(landscape)、

     square”(square)之一

    屏幕像素密度      一英寸中的像素点(dpi)(例如,92dpi108dpi

    触摸屏类型         notouch”、“stylus”、“finger”之一

    键盘显示             keysexposed ”或“keyshidden

    键盘输入类型    nokeys”、“qwerty”、“12key”之一

    UI导航类型        notouch”、“dpad”、“trackball”、“wheel”之一

    屏幕分辨率          最大的屏幕尺寸(像素)(例如,320x240

     

    你可以为任何资源类型指定多个标识符,相互之前使用“-”分隔符。任意组合都是支持的,但是,它们必须按照列表中给出顺序使用,且每种类型的标识符不能超过1个值。

     

    接下来的例子显示了drawable资源有效的和无效的文件夹名。

     

    有效:

    drawable-en-rUS

    drawable-en-keyshidden

    drawable-land-notouch-nokeys-320x240

    无效:

    drawable-rUS-en (顺序错了)

    drawable-rUS-rUK (单个类型的标识符拥有多个值)

     

    Android在运行时获取资源时,它会从可供选择的资源里寻找最匹配的。从文件夹(文件夹中都含有需要的值)列表开始,Android选择标识符匹配最多的文件夹。如果两个文件夹匹配的一样多,那么,上面列表中的匹配标识符的顺序会用来作决胜局的依据。

  • 相关阅读:
    2019年有谁放弃了创业当老板,选择打工或者待业?
    为什么很多人说现在做什么生意都不好做?
    创业是不是很难,假如只有500块如何创业?
    为什么生意越来越难做?
    我现在想做熟食行业,不知道现在的前景怎么样,能行吗?
    在北京十万元创业干什么好?
    风投公司会不会抄袭创业者的模式?
    利用快手抖音做小吃培训,年入100000+
    写车评兼职赚钱项目,每月稳赚2000-5000元
    【瓷博会】宝瓷林《锦绣中华》发布会
  • 原文地址:https://www.cnblogs.com/suizhikuo/p/3113977.html
Copyright © 2020-2023  润新知