プロジェクトがsampleフォルダ以下にあるとする。
1. 埋め込まれていたメッセージをリソースファイルに配置する。
locale用のフォルダを作成
sample\locale\ja_JP
sample\locale\en_US
それぞれのフォルダ内に、messages.properties というファイルを配置する。
※ ファイル名は任意だが、拡張子はpropertiesで固定。
中身は次のように。
# メッセージの例
messageSample=これはメッセージです
コメントは”#”または”!”。
書式は次のページの「リソースの作成」を参照
http://livedocs.adobe.com/flex/3_jp/html/help.html?content=l10n_1.html
2. Flex 3 の設定
メニュー/プロジェクト/プロパティーを開き、
左ペインのFlexビルドパスを選択、右ペインのソースパスに追加
locale/{locale}
左ペインのFlexコンパイラを選択、右ペインの追加コンパイラ引数を確認
-locale ja_JP
ここをen_USに変えれば英語版を作製できる。
なお、リソースファイルをsample\src以下に配置する場合は次を追加する
-allow-source-path-overlap=true
3. リソースの使用
クラスの宣言の前に次を挿入。
import mx.resources.ResourceManager;
[ResourceBundle(“messages”)]
次で呼び出しできる。
ResourceManager.getInstance().getString(“messages”, “messageSample”)
※ クラスの初期化時や、プリローダではリソースを使用できないので注意!
4. mxmlc でコンパイル
例えば、次のようなバッチファイルで実行する(Windowsの場合)。
set MXMLC=”C:\Program Files\Adobe\Flex Builder 3\sdks\3.0.0\bin\mxmlc.exe”
set LOCALE=ja_JP
%MXMLC% –locale=%LOCALE% –allow-source-path-overlap=true –source-path=locale\{locale} src\sample.mxml
参考:[Flex2] Flex2の多言語対応