首页 > 代码库 > android学习笔记40——国际化和资源自适应

android学习笔记40——国际化和资源自适应

国际化——Internationalization,简称I18N.

本地化——Localization,检查L10N.

java国际化资源的思路:

  java提供国际化资源的思路,是将程序中的标签、提示信息放在资源文件中,程序需要支持那些语音,就需要提供对应的资源文件。

资源文件是key-value类型,每个资源文件的key一致,value随不同语音而改变。

技术分享

java国际化主要通过如下三个类完成:

  1.java.util.ResourceBundle——用于加载一个国家、语言资源包;

  2.java.util.Locale——用于封装一个特定的国家/区域、语音环境;

  3.java.text.MessageFormat——用于格式化带占位符的字符串。

 

 注意:为了实现程序的国际化,必须首先提供程序所需要的资源文件。资源文件的内容适合很多key-value对。key,程序所用,value,显示信息。

资源文件命名方式:

  1.baseName.properties

  2.baseName_language.properties

  3.baseName_language_country.properties

注意:baseName,可进行自定义,而language、country,不能随意改变,必须是java所支持的语音和国家。

      可通过调用Locale类的getAvailaLocales()(返回一个Locale数组)获取java所支持的所有语音和国家。

如下图所示:

技术分享

 

android应用国际化

技术分享

技术分享

 

国际化android应用

1.添加对应的资源文件

2.设置系统环境(Settings-->Language&keyboard settings-->Select language-->English(United States)),android会自动根据系统环境加载对应的资源文件

 

android学习笔记40——国际化和资源自适应