Android多国语言的value文件夹命名方式

在res目�下建立不同名�Q的values文件�碚{用不同的�Z言包
Values文件�R�如下:
中文(中��):values-zh-rCN中文(台�常�:values-zh-rTW
中文(香港):values-zh-rHK
英�Z(美��):values-en-rUS
英�Z(英��):values-en-rGB
英文(澳大利��):values-en-rAU
英文(加拿大):values-en-rCA
英文(����m):values-en-rIE
英文(印度):values-en-rIN
英文(新西�m):values-en-rNZ
英文(新加坡):values-en-rSG
英文(南非):values-en-rZA
阿拉伯文(埃及):values-ar-rEG
阿拉伯文(以色列):values-ar-rIL
保加利��文: values-bg-rBG
加泰�_尼��文:values-ca-rES
捷克文:values-cs-rCZ
丹��文:values-da-rDK
德文(�W地利):values-de-rAT
德文(瑞士):values-de-rCH
德文(德��):values-de-rDE
德文(列支敦士登):values-de-rLI
希�D文:values-el-rGR
西班牙文(西班牙):values-es-rES
西班牙文(美��):values-es-rUS
芬�m文(芬�m):values-fi-rFI
法文(比利�r):values-fr-rBE
法文(加拿大):values-fr-rCA
法文(瑞士):values-fr-rCH
法文(法��):values-fr-rFR
希伯�砦模�values-iw-rIL
印地文:values-hi-rIN
克�_里��文:values-hr-rHR
匈牙利文:values-hu-rHU
印度尼西��文:values-in-rID
意大利文(瑞士):values-it-rCH
意大利文(意大利):values-it-rIT
日文:values-ja-rJP
�n文:values-ko-rKR
立陶宛文:valueslt-rLT
拉��S��文:values-lv-rLV
挪威博克�R��文:values-nb-rNO
荷�m文(比利�r):values-nl-BE
荷�m文(荷�m):values-nl-rNL
波�m文:values-pl-rPL
葡萄牙文(巴西):values-pt-rBR
葡萄牙文(葡萄牙):values-pt-rPT
�_�R尼��文:values-ro-rRO
俄文:values-ru-rRU
斯洛伐克文:values-sk-rSK
斯洛文尼��文:values-sl-rSI
塞���S��文:values-sr-rRS
瑞典文:values-sv-rSE
泰文:values-th-rTH
塔加洛�Z:values-tl-rPH
土耳其文:values�Cr-rTR
�蹩颂m文:values-uk-rUA

越南文:values-vi-rVN


要使用多语言,首先肯定要有为不同语言准备的资源。

只需要按照Android提供的规范,对不同语言下的资源文件夹进行对应的命名即可。
比如我们知道/valus是Android的默认简单资源(字符串、数值、颜色等)的文件夹,那么对不同语言下提供的values文件夹命名方式就形如:

/values-zh
/values-zh-rCN
/values-zh-rTW

  • 其中values保持不变;

  • 后缀的zh表示语言;

  • 后缀的rCN、rTW其中‘r’是一个标记,表示后面跟着的CN、TW是国家或地区标志。

所以以上三个资源文件夹表示所对应的语言环境分别为:

中文
中文-中国 (即中文简体)
中文-台湾 (即中文繁体)

默认情况下,Android会根据系统的语言地区设置,自动选择对应的资源。

会首先尝试语言地区全匹配,如果没有权匹配的资源包,则会尝试匹配语言,最后则会取默认的。
比如如果Android系统的语言地区是中文简体,则首先会尝试从/values-zh-rCN中获取资源,如果没有此文件夹或者文件夹中没有响应的资源,则会尝试/values-zh,都获取不到的情况下即从/values中获取。
/values是必须存在的,否则不能通过编译

当然,也可以在代码中手动进行控制,指定所选择的语言:

  1. Configuration config = getResources().getConfiguration();//获取系统的配置  

  2. config.locale = Locale.TRADITIONAL_CHINESE;//将语言更改为繁体中文  

  3. getResources().updateConfiguration(config, getResources().getDisplayMetrics());//更新配置  




你可能感兴趣的:(android,以色列,加拿大,新加坡,命名方式)