在Flash Builder 4.7(含3.5 AIR),我想語言環境爲en_US和de_DE這個添加到Flex移動應用程序,這原本也不過才ru_RU。試圖語言環境添加到Flex移動應用程序:ResourceManager的是空
I.e.最初我只有-locale ru_RU
在項目屬性 - > Flex編譯器和源代碼中的硬編碼俄文文本(一切工作正常)。
但研究Adobe docs Localization in Flex – Part 1: Compiling resources into an application和Adding new locales我已經改變了Flex編譯器(標誌)後:-locale ru_RU en_US de_DE
:
並增加src\locale\{locale}
到源路徑:
最後我創建了分區和文件
項src\locale\ru_RU\resources.properties
src\locale\en_US\resources.properties
src\locale\de_DE\resources.properties
這裏EN_US \ resources.properties內容:
menu.play=Play via
menu.weekly=Weekly rating
menu.daily=Daily misere
menu.settings=Settings
的AIR 3.5 SDK目錄已經包含了3個子目錄本身:
C:\Program Files\Adobe\Adobe Flash Builder 4.7 (64 Bit)\sdks\4.6.0 (AIR 3.5)\
frameworks\projects\framework\bundles\ru_RU
frameworks\projects\framework\bundles\en_US
frameworks\projects\framework\bundles\de_DE
,所以我沒有用過copylocale
實用程序(對吧?)
在我的源代碼中我改變了第一個視圖:
<fx:Metadata>
[ResourceBundle("resources")]
</fx:Metadata>
......
[Bindable]
private var _ac:ArrayCollection = new ArrayCollection([
{ icon: OK_ICON, view: OK, label: resourceManager.getString('resources','menu.play'), msg: 'Odnoklassniki.ru' },
{ icon: MR_ICON, view: MR, label: resourceManager.getString('resources','menu.play'), msg: 'Mail.ru' },
{ icon: VK_ICON, view: VK, label: resourceManager.getString('resources','menu.play'), msg: 'Vk.com' },
{ icon: FB_ICON, view: FB, label: resourceManager.getString('resources','menu.play'), msg: 'Facebook.com' },
{ icon: GG_ICON, view: GG, label: resourceManager.getString('resources','menu.play'), msg: 'Google+' }
]);
但是,新代碼在運行時彈出,說resourceManager
爲空。
請問我錯過了什麼?
我應該初始化resourceManager
不知何故?
不知道這是否是你的一個問題,但是我發現沒有定義編譯器參數爲'-locale = en_US,則ru_RU'編譯器將無法識別多個參數。 –