我也刚刚接触SAPUI5。边学边记录,希望大家不吝赐教。
如果你看过OPENUI5官网,学习它的教程的过程中,或者通过它的IDE新建一个项目,你肯定会发现有个叫i18n的文件夹。这个文件夹的存在就是为了存放着根据不同的浏览器环境配置的语言文件包(当然还有其他的东西,这里仅仅介绍文件包)。
OpenUI5 对语言使用字符串标识,遵循 BCP-47 标准。比如 en
表示英语,en-US
表示美国英语。zh-Hans
表示中文简体,zh-Hant
表示中文繁体。
SAP ABAP 使用的是另外一套专门的编码,比如 ZH
表示中文简体,ZF
表示中文繁体。OpenUI5 能识别 ABAP 的编码并转换成 BCP-47 编码。
OPENUI5在加载语言包的时候,有一个“当前语言”的概念,会按照当前语言来加载对应的语言包。当前语言的优先级从上到下依次为
1 URL中的locale参数 (即在URL后面加上?sap-ui-language=xxx)
2 应用程序代码的locale设置,(这个我还不太懂是怎么设置,有待补充)
3 安卓平台的用户代理字符串设置
4 浏览器的一般语言设置
5 浏览器中的语言配置
6 openui5中的硬编码
资源包一般放在i18n文件夹下,i18n.properties为默认文件,即如果没有上述的配置,将会默认加载i18n.properties作为默认语言包。
语言包的格式如下
#开头表