nod::ぶろぐ:RIA::Flex/AIR/Flash

FlashやFlex,(Ajax),S2Flex2,ActionScript3,yui-frameworks,Akabanaプロジェクトなどのメモ帳

Flex2ではLocaleを実行時に変更できない。のか?

Flex2ではコンパイル時に-localeオプションを指定して文字列や画像を含むresourceリンクを決定します。
Flex Builder 2ではこのlocaleをプロジェクト作成時に決めているようです。
Flexプロジェクトを新規に作成すると、Flex Compiler オプションの項目に自動的に
-locale en_US
と入っていると思います。

Beta2の頃からこのLocalizeの仕組みが追加されたのですが 、複数Locale対応のコンテンツを作成するときには、Localeの数だけmxmlcを実行するというものでした。

つまりLocale単位でswf ファイルをコンパイルして生成するとのこと..
RSLと組み合わせることで、mxmlファイルをリコンパイルせずでResoruceから取得する文字列を変更することはできることはわかりました。
ActionScript内で動的にLocaleを変更する方法がわからず調べてみるとlivedocsに以下の記述がありました。

Creating the application SWF file
http://livedocs.macromedia.com/flex/2/docs/00000904.html

一部を引用します。


The locale that is packaged in the SWF file. You run the mxmlc compiler
multiple times to create SWF files for more than one locale, and change only
the locale option.

もう一回。

one locale and change only the locale and change only the locale option.
( ̄□ ̄;)!!

ひとつのlocaleしか持てなくて、変更はコンパイル時のlocaleオプションのみ可能であると書いてあるように思います。

livedocsのドキュメントをみても、設定後ResourceBundleから該当するLocaleに含まれてるResourceを取得するということができるかわかりません。

実行時にLocaleを変更することはAS3ではできないということになるのでしょうか?
FlexCoder ::sato-shiさんのところで紹介されていた、 Flex をフロントにしたサイト解析では変更していたようにもみえます。
なにか方法があるのでしょうか...
それとも別の方法?

Localeクラスを拡張するとか
Application.application.systemManagerを拡張したクラスをつくるとか

知っている方いましたら教えてください。m(__)m

mx.resources.Locale@livedocs
readOnlyなプロパティばかりなり...
http://livedocs.macromedia.com/flex/2/langref/mx/resources/Locale.html

Creating the application SWF file
http://livedocs.macromedia.com/flex/2/docs/00000904.html

Dynamically Localizing Flex Applications
海外で擬似的に動的に変更していた例は以下のものでした。
XMLファイルをloaderで読み込んでいます。
http://www.blog2e.com/2006/05/09/localizing_flex/

Posted by nod at 2006年07月29日 01:43 | コメント (2) | トラックバック (1) | Clip!! | Clip!! | このエントリーを含むはてなブックマーク |digg it! |del.icio.us it!

この記事に対するコメント

S2Flexにあったメッセージリソースの仕組み使うとか。

Posted by: ひが at 2006年07月29日 18:08

なるほどー。
サーバ側から取得する方法ですね。
ResourceBundleの別の方法とあわせて考えてみます。
ありがとうございました。

Posted by: nod at 2006年07月31日 20:28

コメントを投稿する




保存しますか?



この記事のトラックバックURL


この記事に対するトラックバック

» Flex3のRuntime Localizationを試してみる(Beta1)

Flex 2では、コンパイル時にlocaleを一つだけ指定してswfファイルを生...
Tracked by: nod::ぶろぐ::RIA::Flash/Flex/Ajax at 2007年10月03日 08:55


Flex.org - The Directory for Flex Get Adobe Flash Player Made with dreamweaverMade with fireworksPowered by Movable Type 3.36Powered by Wandering Wind
Copyright : [Articles] (C) nod::ぶろぐ:RIA::Flex/AIR/Flash All Rights Reserved.
[Comments/Trackbacks] ... Authors of those have rights.