パッケージ | fl.lang |
クラス | public class Locale |
継承 | Locale EventDispatcher Object |
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flash CS3 |
ランタイムバージョン: | Flash Player 9, AIR 1.0 |
-
"automatically at runtime"
- Flash Player によって、ストリング ID が flash.system.capabilities.language から返されるデフォルトのシステム言語コードと一致する XML ファイルのストリングに置き換えられます。 -
"manually using stage language"
- コンパイル時にストリング ID がストリングに置き換えられるので、Flash Player では変更できません。 -
"via ActionScript at runtime"
- ストリング ID の置き換えを、実行時に ActionScript を使用して制御します。このオプションでは、ストリング ID を置き換えるタイミングと言語を両方とも制御できます。
このクラスのプロパティとメソッドは、「実行時に ActionScript を使用して」という方法でストリング ID を置き換える場合に使用できます。
使用可能なプロパティとメソッドはすべて静的です。つまり、fl.lang.Locale クラスのインスタンスではなく、クラス自体を使ってアクセスします。
注意: Locale クラスは Flash Authoring クラスパスにインストールされており、SWF ファイルに自動的にコンパイルされます。Locale クラスを使用すると、クラスが SWF ファイルにコンパイルされるので、SWF ファイルのサイズがわずかに大きくなります。
関連する API エレメント
プロパティ | 定義元 | ||
---|---|---|---|
autoReplace : Boolean [静的]
XML ファイルをロードした後に自動的にストリングを置き換えるかどうかを示します。 | Locale | ||
constructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクター関数への参照です。 | Object | ||
languageCodeArray : Array [静的] [読み取り専用]
指定された言語または FLA ファイルにロードされた言語の言語コードが含まれる配列です。 | Locale | ||
stringIDArray : Array [静的] [読み取り専用]
FLA ファイル内のストリング ID がすべて含まれる配列です。 | Locale |
メソッド | 定義元 | ||
---|---|---|---|
[静的]
インスタンスとストリング ID のペアを内部配列に追加して、後で使用できるようにします。 | Locale | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。 | EventDispatcher | ||
[静的]
言語コードと言語パスのペアを内部配列に追加して、後で使用できるようにします。 | Locale | ||
[静的]
XML ファイルがロードされた場合は true、それ以外の場合は false を返します。 | Locale | ||
イベントをイベントフローに送出します。 | EventDispatcher | ||
[静的]
ストリングパネルのダイアログボックスで設定されたか、setDefaultLang() メソッドを呼び出すことで設定されたデフォルトの言語コード。 | Locale | ||
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。 | EventDispatcher | ||
オブジェクトに指定されたプロパティが定義されているかどうかを示します。 | Object | ||
[静的]
使用言語を自動的に判別し、その言語の XML ファイルをロードします。 | Locale | ||
Object クラスのインスタンスが、パラメーターとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。 | Object | ||
[静的]
指定された言語の XML ファイルをロードします。 | Locale | ||
[静的]
指定されたストリング ID に関連付けられたストリング値を現在の言語で返します。 | Locale | ||
[静的]
指定されたストリング ID と言語コードに関連付けられたストリング値を返します。 | Locale | ||
指定されたプロパティが存在し、列挙できるかどうかを示します。 | Object | ||
EventDispatcher オブジェクトからリスナーを削除します。 | EventDispatcher | ||
[静的]
デフォルトの言語コードを設定します。 | Locale | ||
[静的]
XML ファイルがロードされた後に呼び出されるコールバック関数を設定します。 | Locale | ||
ループ処理に対するダイナミックプロパティの可用性を設定します。 | Object | ||
[静的]
指定されたストリング ID と言語コードに関連付ける新しいストリング値を設定します。 | Locale | ||
ロケール固有の規則に従って書式設定された、このオブジェクトのストリング表現を返します。 | Object | ||
指定されたオブジェクトのストリング表現を返します。 | Object | ||
指定されたオブジェクトのプリミティブな値を返します。 | Object | ||
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。 | EventDispatcher |
autoReplace | プロパティ |
autoReplace:Boolean
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flash CS3 |
ランタイムバージョン: | Flash Player 9, AIR 1.0 |
XML ファイルをロードした後に自動的にストリングを置き換えるかどうかを示します。true
に設定されている場合、テキスト置き換え方法は ストリングパネルの設定 "automatically at runtime"
と同じになります。つまり、Flash Player によってホスト環境のデフォルト言語が決定され、自動的にその言語でテキストが表示されます。false
に設定されている場合、テキスト置き換え方法はストリングパネルの設定 "via ActionScript at runtime"
と同じになります。つまり、開発者が、該当する XML ファイルをロードしてテキストを表示する必要があります。
このプロパティのデフォルト値には、ストリングパネルのダイアログボックスの「ストリングの置き換え」について選択した設定が反映されます。true
が "automatically at runtime"
(デフォルト設定)を選択した場合の設定、false
が「[実行時に ActionScript を使用して」を選択した場合の設定です。
実装
public static function get autoReplace():Boolean
public static function set autoReplace(value:Boolean):void
例 ( この例の使用方法 )
Locale.autoReplace
プロパティを使用して、ステージ上の動的に作成された greeting_txt
テキストフィールドに、英語の XML ファイル内の IDS_GREETING
ストリングの内容を入力します。ストリングパネルで、「設定」ボタンをクリックして、設定ダイアログボックスを開きます。設定ダイアログボックスを使用して 2 つのアクティブな言語、つまり英語(en)およびフランス語(fr)を追加し、「ストリングの置き換え」ラジオコントロールを "via ActionScript at runtime"
に設定し、「OK」をクリックします。最後に、ストリングパネルで、IDS_GREETING のストリング ID を入力し、アクティブな言語ごとにテキストを追加します。
var greeting_txt:TextField = new TextField(); greeting_txt.x = 40; greeting_txt.y = 40; greeting_txt.width = 200; greeting_txt.height = 20; greeting_txt.autoSize = TextFieldAutoSize.LEFT; Locale.autoReplace = true; Locale.addDelayedInstance(greeting_txt, "IDS_GREETING"); Locale.loadLanguageXML("en");
languageCodeArray | プロパティ |
languageCodeArray:Array
[読み取り専用] 言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flash CS3 |
ランタイムバージョン: | Flash Player 9, AIR 1.0 |
指定された言語または FLA ファイルにロードされた言語の言語コードが含まれる配列です。言語コードは、アルファベット順にソートされません。
実装
public static function get languageCodeArray():Array
例 ( この例の使用方法 )
lang_cb
にします。テキストツールを使用して、ダイナミックテキストフィールドを作成し、インスタンス名を greeting_txt
にします。ストリングパネルでは、少なくとも 2 つのアクティブな言語を追加し、「ストリングの置き換え」ラジオコントロールを "via ActionScript at runtime"
に設定して、「OK」をクリックします。次に、ストリング ID IDS_GREETING を追加し、アクティブな言語ごとにテキストを追加します。最後に、次の ActionScript コードをメインタイムラインのフレーム 1 に追加します。
Locale.setLoadCallback(localeListener); lang_cb.dataProvider = Locale.languageCodeArray.sort(); lang_cb.addEventListener("change", langListener); function langListener(eventObj:Object):void { Locale.loadLanguageXML(eventObj.target.value); } function localeListener(success:Boolean):void { if (success) { greeting_txt.text = Locale.loadString("IDS_GREETING"); } else { greeting_txt.text = "unable to load language XML file."; } }
stringIDArray | プロパティ |
stringIDArray:Array
[読み取り専用] 言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flash CS3 |
ランタイムバージョン: | Flash Player 9, AIR 1.0 |
FLA ファイル内のストリング ID がすべて含まれる配列です。ストリング ID は、アルファベット順にソートされません。
実装
public static function get stringIDArray():Array
例 ( この例の使用方法 )
Locale.stringIDArray
プロパティを出力します。ストリングパネルで、「設定」ボタンをクリックして、設定ダイアログボックスを開きます。次に、2 つのアクティブな言語、つまり英語(en)およびフランス語(fr)を追加し、「ストリングの置き換え」ラジオコントロールを "via ActionScript at runtime"
に設定し、「OK」をクリックします。ストリングパネルで、IDS_GREETING のストリング ID を入力し、アクティブな言語ごとにテキストを追加します。
Locale.setLoadCallback(localeCallback); Locale.loadLanguageXML("fr"); function localeCallback(success:Boolean) { trace(success); trace(Locale.stringIDArray); // IDS_GREETING trace(Locale.loadStringEx("IDS_GREETING", "fr")); // bonjour }
addDelayedInstance | () | メソッド |
public static function addDelayedInstance(instance:Object, stringID:String):*
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flash CS3 |
ランタイムバージョン: | Flash Player 9, AIR 1.0 |
インスタンスとストリング ID のペアを内部配列に追加して、後で使用できるようにします。このメソッドは主に、ストリングの置き換え方法が "automatically at runtime"
である場合に Flash によって使用されます。
パラメーター
instance:Object — 設定するテキストフィールドのインスタンス名。
| |
stringID:String — 言語のストリング ID。
|
* |
例 ( この例の使用方法 )
autoReplace
プロパティと addDelayedInstance()
メソッドを使用して、ステージ上のテキストフィールドに、英語の XML ファイル内の IDS_GREETING
ストリングを入力します。
greeting_txt.autoSize = TextFieldAutoSize.LEFT; Locale.autoReplace = true; Locale.addDelayedInstance(greeting_txt, "IDS_GREETING"); Locale.loadLanguageXML("en");
addXMLPath | () | メソッド |
public static function addXMLPath(langCode:String, path:String):void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flash CS3 |
ランタイムバージョン: | Flash Player 9, AIR 1.0 |
言語コードと言語パスのペアを内部配列に追加して、後で使用できるようにします。このメソッドは主に、ストリングの置き換え方法が "automatically at runtime"
または "via ActionScript at runtime"
である場合に Flash Player によって使用されます。このメソッドを使用すると、Flash Professional によって設定されたデフォルトの場所ではなく、カスタムの場所から XML 言語ファイルをロードすることができます。Flash Professional では、デフォルトで、FLA ファイルの名前が付いたサブディレクトリ内の作業ディレクトリに、各言語の XML ファイルが作成されます。
パラメーター
langCode:String — 言語コード。
| |
path:String — 追加する XML パス。
|
例 ( この例の使用方法 )
Locale.addXMLPath("en", "locale/locale_en.xml"); Locale.addXMLPath("fr", "locale/locale_fr.xml"); Locale.setLoadCallback(Delegate.create(this, languageLoaded)); Locale.loadLanguageXML("en"); private function languageLoaded(success:Boolean):Void { trace(Locale.loadString("IDS_HELLO");
checkXMLStatus | () | メソッド |
public static function checkXMLStatus():Boolean
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flash CS3 |
ランタイムバージョン: | Flash Player 9, AIR 1.0 |
XML ファイルがロードされた場合は true
を、それ以外の場合は false
を返します。
Boolean — XML ファイルがロードされた場合は true を、それ以外の場合は false を返します。
|
例 ( この例の使用方法 )
greeting_txt
テキストフィールドに、その XML ファイル内の IDS_GREETING
ストリングが入力されます。
Locale.setLoadCallback(localeCallback); Locale.loadLanguageXML("en"); // create interval to check if language XML file is loaded var locale_int:Number = setInterval(checkLocaleStatus, 10); function checkLocaleStatus():void { if (Locale.checkXMLStatus()) { clearInterval(locale_int); trace("clearing interval @ " + getTimer() + " ms"); } } // callback function for Locale.setLoadCallback() function localeCallback(success:Boolean):void { greeting_txt.text = Locale.loadString("IDS_GREETING"); }
getDefaultLang | () | メソッド |
public static function getDefaultLang():String
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flash CS3 |
ランタイムバージョン: | Flash Player 9, AIR 1.0 |
ストリングパネルのダイアログボックスで設定されたか、setDefaultLang()
メソッドを呼び出すことで設定されたデフォルトの言語コード。
String — デフォルトの言語コードを返します。
|
関連する API エレメント
例 ( この例の使用方法 )
defLang
という変数を作成します。ストリングパネルで設定ボタンをクリックして、設定ダイアログボックスを起動します。次に、2 つのアクティブな言語、つまり英語(en)およびフランス語(fr)を追加し、「ストリングの置き換え」ラジオコントロールを "via ActionScript at runtime"
に設定し、「OK」をクリックします。ストリングパネルで、IDS_GREETING のストリング ID を入力し、アクティブな言語ごとにテキストを追加します。
var defLang:String = "fr"; Locale.setDefaultLang(defLang); Locale.setLoadCallback(localeCallback); Locale.loadLanguageXML(Locale.getDefaultLang()); function localeCallback(success:Boolean) { if (success) { trace(Locale.stringIDArray); // IDS_GREETING trace(Locale.loadString("IDS_GREETING")); } else { trace("unable to load XML"); } }
initialize | () | メソッド |
public static function initialize():void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flash CS3 |
ランタイムバージョン: | Flash Player 9, AIR 1.0 |
使用言語を自動的に判別し、その言語の XML ファイルをロードします。このメソッドは主に、ストリングの置き換え方法が "automatically at runtime"
である場合に Flash によって使用されます。
例 ( この例の使用方法 )
initialize()
メソッドを使用して、ステージ上の greeting_txt
テキストフィールドに、ユーザーの現在の OS 言語を入力します。initialize()
メソッドを直接使用する代わりに、ストリング置き換え方法である "automatically at runtime"
を使用します。
trace(System.capabilities.language); Locale.autoReplace = true; Locale.addDelayedInstance(greeting_txt, "IDS_GREETING"); Locale.initialize();
loadLanguageXML | () | メソッド |
public static function loadLanguageXML(xmlLanguageCode:String, customXmlCompleteCallback:Function = null):void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flash CS3 |
ランタイムバージョン: | Flash Player 9, AIR 1.0 |
指定された言語の XML ファイルをロードします。
パラメーター
xmlLanguageCode:String — ロードする特定言語の XML ファイルの言語コード。
| |
customXmlCompleteCallback:Function (default = null ) — 特定言語の XML ファイルのロード時に呼び出されるカスタムコールバック関数。
|
例 ( この例の使用方法 )
loadLanguageXML()
を使用して、英語の XML ファイルをロードします。英語の XML ファイルがロードされると、localeCallback()
メソッドが呼び出され、ステージ上の greeting_txt
テキストフィールドに、その XML ファイル内の IDS_GREETING
ストリングの内容が入力されます。
Locale.setLoadCallback(localeCallback); Locale.loadLanguageXML("en"); // create interval to check if language XML file is loaded var locale_int:Number = setInterval(checkLocaleStatus, 10); function checkLocaleStatus():void { if (Locale.checkXMLStatus()) { clearInterval(locale_int); trace("clearing interval @ " + getTimer() + " ms"); } } // callback function for Locale.setLoadCallback() function localeCallback(success:Boolean):void { greeting_txt.text = Locale.loadString("IDS_GREETING"); }
loadString | () | メソッド |
public static function loadString(id:String):String
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flash CS3 |
ランタイムバージョン: | Flash Player 9, AIR 1.0 |
指定されたストリング ID に関連付けられたストリング値を現在の言語で返します。
パラメーター
id:String — ロードするストリングの識別(ID)番号。
|
String — 指定されたストリング ID に関連付けられたストリング値を現在の言語で返します。
|
関連する API エレメント
例 ( この例の使用方法 )
greeting_txt
テキストフィールドに、その XML 言語ファイル内の IDS_GREETING
ストリングが入力されます。
Locale.setLoadCallback(localeCallback); Locale.loadLanguageXML("en"); // create interval to check if language XML file is loaded var locale_int:Number = setInterval(checkLocaleStatus, 10); function checkLocaleStatus():void { if (Locale.checkXMLStatus()) { clearInterval(locale_int); trace("clearing interval @ " + getTimer() + " ms"); } } // callback function for Locale.setLoadCallback() function localeCallback(success:Boolean):void { greeting_txt.text = Locale.loadString("IDS_GREETING"); }
loadStringEx | () | メソッド |
public static function loadStringEx(stringID:String, languageCode:String):String
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flash CS3 |
ランタイムバージョン: | Flash Player 9, AIR 1.0 |
指定されたストリング ID と言語コードに関連付けられたストリング値を返します。予期しない XML ファイルのローディングを防止するため、loadStringEx()
は、特定言語の XML ファイルがロードされていない場合にその XML ファイルをロードしません。特定言語の XML ファイルをロードする場合は、loadLanguageXML()
を呼び出す適切なタイミングを決定してください。
パラメーター
stringID:String — ロードするストリングの識別(ID)番号。
| |
languageCode:String — 言語コード。
|
String — languageCode パラメーターで指定された言語による指定されたストリング ID に関連付けられたストリング値。
|
関連する API エレメント
例 ( この例の使用方法 )
loadStringEx()
メソッドを使用して、現在ロードされているフランス語の XML ファイルに対応する IDS_GREETING
ストリングの値を出力します。
Locale.setLoadCallback(localeCallback); Locale.loadLanguageXML("fr"); function localeCallback(success:Boolean) { trace(success); trace(Locale.stringIDArray); // IDS_GREETING trace(Locale.loadStringEx("IDS_GREETING", "fr")); // bonjour }
setDefaultLang | () | メソッド |
public static function setDefaultLang(langCode:String):void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flash CS3 |
ランタイムバージョン: | Flash Player 9, AIR 1.0 |
デフォルトの言語コードを設定します。
パラメーター
langCode:String — 言語コードを表すストリング。
|
関連する API エレメント
例 ( この例の使用方法 )
defLang
という変数を作成します。ストリングパネルで「設定」ボタンをクリックして、設定ダイアログボックスを開きます。次に、2 つのアクティブな言語、つまり英語(en)およびフランス語(fr)を追加し、「ストリングの置き換え」ラジオコントロールを "via ActionScript at runtime"
に設定し、「OK」をクリックします。ストリングパネルで、IDS_GREETING のストリング ID を入力し、アクティブな言語ごとにテキストを追加します。
var defLang:String = "fr"; Locale.setDefaultLang(defLang); Locale.setLoadCallback(localeCallback); Locale.loadLanguageXML(Locale.getDefaultLang()); function localeCallback(success:Boolean) { if (success) { trace(Locale.stringIDArray); // IDS_GREETING trace(Locale.loadString("IDS_GREETING")); } else { trace("unable to load XML"); } }
setLoadCallback | () | メソッド |
public static function setLoadCallback(loadCallback:Function):*
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flash CS3 |
ランタイムバージョン: | Flash Player 9, AIR 1.0 |
XML ファイルがロードされた後に呼び出されるコールバック関数を設定します。
パラメーター
loadCallback:Function — 特定言語の XML ファイルのロード時に呼び出される関数。
|
* |
例 ( この例の使用方法 )
greeting_txt
テキストフィールドに、その XML 言語ファイル内の IDS_GREETING
ストリングが入力されます。
Locale.setLoadCallback(localeCallback); Locale.loadLanguageXML("en"); // create interval to check if language XML file is loaded var locale_int:Number = setInterval(checkLocaleStatus, 10); function checkLocaleStatus():void { if (Locale.checkXMLStatus()) { clearInterval(locale_int); trace("clearing interval @ " + getTimer() + " ms"); } } // callback function for Locale.setLoadCallback() function localeCallback(success:Boolean):void { greeting_txt.text = Locale.loadString("IDS_GREETING"); }
setString | () | メソッド |
public static function setString(stringID:String, languageCode:String, stringValue:String):void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flash CS3 |
ランタイムバージョン: | Flash Player 9, AIR 1.0 |
指定されたストリング ID と言語コードに関連付ける新しいストリング値を設定します。
パラメーター
stringID:String — 設定するストリングの識別(ID)番号。
| |
languageCode:String — 言語コード。
| |
stringValue:String — ストリング値。
|
例 ( この例の使用方法 )
setString()
メソッドを使用して、英語(en)とフランス語(fr)の両方の値を IDS_WELCOME
ストリングに設定します。
Locale.setString("IDS_WELCOME", "en", "hello"); Locale.setString("IDS_WELCOME", "fr", "bonjour"); trace(Locale.loadStringEx("IDS_WELCOME", "en")); // hello
Tue Jun 12 2018, 10:34 AM Z