國際化(I18N)
I18N服務是在YMP框架啟動時初始化,其根據ymp.i18n_default_locale進行語言配置,預設採用系統運行環境的語言設定;
國際化資源管理器提供的主要方法:
取得目前語言設定
#I18N.current();
設定目前語言
// 变更当前语言设置且不触发事件 I18N.current(Locale.ENGLISH); 或者 // 将触发监听处理器onChanged事件 I18N.change(Locale.ENGLISH);
根據目前語言設定,載入指定名稱資源檔案內指定的屬性值
I18N.load("resources", "home_title"); 或者 I18N.load("resources", "home_title", "首页");
格式化訊息字串並綁定參數
#// 加载指定名称资源文件内指定的属性并使用格式化参数绑定 I18N.formatMessage("resources", "site_title", "Welcome {0}, {1}","YMP",“GoodLuck!”); // 使用格式化参数绑定 I18N.formatMessage("Hello, {0}, {1}", "YMP",“GoodLuck!”);
國際化資源管理器事件監聽處理器,透過實作II18NEventHandler接口,在YMP設定檔中的
i18n_event_handler_class
參數進行設置,該監聽器可以完成以下操作:- #自訂資源檔案載入流程
- 自訂取得目前語言設定
- 語言設定變更的事件處理程序