| パッケージ | fl.lang |
| クラス | public class Locale |
| 継承 | Locale EventDispatcher Object |
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
"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 ファイルのサイズがわずかに大きくなります。
関連項目
| プロパティ | 定義元 | ||
|---|---|---|---|
| autoReplace : Boolean
[static]
XML ファイルをロードした後に自動的にストリングを置き換えるかどうかを示します。
| Locale | ||
![]() | constructor : Object
特定のオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
| Object | |
| languageCodeArray : Array
[static] [read-only]
指定された言語または FLA ファイルにロードされた言語の言語コードが含まれる配列です。
| Locale | ||
![]() | prototype : Object
[static]
クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
| Object | |
| stringIDArray : Array
[static] [read-only]
FLA ファイル内のストリング ID がすべて含まれる配列です。
| Locale | ||
| メソッド | 定義元 | ||
|---|---|---|---|
|
[static]
インスタンスとストリング ID のペアを内部配列に追加して、後で使用できるようにします。
| Locale | ||
![]() |
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。
| EventDispatcher | |
|
[static]
言語コードと言語パスのペアを内部配列に追加して、後で使用できるようにします。
| Locale | ||
|
[static]
XML ファイルがロードされた場合は true、それ以外の場合は false を返します。
| Locale | ||
![]() |
イベントをイベントフローに送出します。
| EventDispatcher | |
|
[static]
[ストリング] パネルのダイアログボックスで設定されたか、setDefaultLang() メソッドを呼び出すことで設定されたデフォルトの言語コード。
| Locale | ||
![]() |
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。
| EventDispatcher | |
![]() |
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
| Object | |
|
[static]
使用言語を自動的に判別し、その言語の XML ファイルをロードします。
| Locale | ||
![]() |
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
| Object | |
|
[static]
指定された言語の XML ファイルをロードします。
| Locale | ||
|
[static]
指定されたストリング ID に関連付けられたストリング値を現在の言語で返します。
| Locale | ||
|
[static]
指定されたストリング ID と言語コードに関連付けられたストリング値を返します。
| Locale | ||
![]() |
指定されたプロパティが存在し列挙できるかどうかを示します。
| Object | |
![]() |
EventDispatcher オブジェクトからリスナーを削除します。
| EventDispatcher | |
|
[static]
デフォルトの言語コードを設定します。
| Locale | ||
|
[static]
XML ファイルがロードされた後に呼び出されるコールバック関数を設定します。
| Locale | ||
![]() |
ループ処理に対するダイナミックプロパティの可用性を設定します。
| Object | |
|
[static]
指定されたストリング ID と言語コードに関連付ける新しいストリング値を設定します。
| Locale | ||
![]() |
指定されたオブジェクトのストリング表現を返します。
| Object | |
![]() |
指定されたオブジェクトのプリミティブな値を返します。
| Object | |
![]() |
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。
| EventDispatcher | |
| autoReplace | プロパティ |
autoReplace:Boolean [read-write]
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
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 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 [read-only]
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
指定された言語または 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 [read-only]
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
FLA ファイル内のストリング ID がすべて含まれる配列です。ストリング ID は、アルファベット順にソートされません。
public static function get stringIDArray():Array
Locale.stringIDArray プロパティを出力します。[ストリング] パネルで、[設定] ボタンをクリックして、[設定] ダイアログボックスを表示します。次に、2 つのアクティブな言語、つまり英語 (en) およびフランス語 (fr) を追加し、[ストリングの置き換え] ラジオコントロールを "via ActionScript at runtime" に設定し、[OK] をクリックします。[ストリング] パネルで、ストリング ID 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
}
| addDelayedInstance | () | メソッド |
public static function addDelayedInstance(instance:Object, stringID:String):*
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
インスタンスとストリング 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 |
| Player のバージョン : | Flash Player 9 |
言語コードと言語パスのペアを内部配列に追加して、後で使用できるようにします。このメソッドは主に、ストリングの置き換え方法が "automatically at runtime" または "via ActionScript at runtime" である場合に Flash によって使用されます。
パラメータ
langCode:String — 言語コード。
|
|
path:String — 追加する XML パス。
|
setInterval() を使用して、特定言語の XML ファイルが正常にロードされたかどうかをチェックします。
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");
}
| checkXMLStatus | () | メソッド |
public static function checkXMLStatus():Boolean
| 言語バージョン : | ActionScript 3.0 |
| Player のバージョン : | Flash Player 9 |
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 |
| Player のバージョン : | Flash Player 9 |
[ストリング] パネルのダイアログボックスで設定されたか、setDefaultLang() メソッドを呼び出すことで設定されたデフォルトの言語コード。
String — デフォルトの言語コードを返します。
|
関連項目
defLang という変数を作成します。[ストリング] パネルで、[設定] ボタンをクリックして、[設定] ダイアログボックスを表示します。次に、2 つのアクティブな言語、つまり英語 (en) およびフランス語 (fr) を追加し、[ストリングの置き換え] ラジオコントロールを "via ActionScript at runtime" に設定し、[OK] をクリックします。[ストリング] パネルで、ストリング ID IDS_GREETING を追加し、アクティブな言語ごとにテキストを追加します。
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 |
| Player のバージョン : | Flash Player 9 |
使用言語を自動的に判別し、その言語の 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 |
| Player のバージョン : | Flash Player 9 |
指定された言語の 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 |
| Player のバージョン : | Flash Player 9 |
指定されたストリング ID に関連付けられたストリング値を現在の言語で返します。
パラメータ
id:String — ロードするストリングの識別 (ID) 番号。
|
String — 指定されたストリング ID に関連付けられたストリング値を現在の言語で返します。
|
関連項目
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 |
| Player のバージョン : | Flash Player 9 |
指定されたストリング ID と言語コードに関連付けられたストリング値を返します。予期しない XML ファイルのローディングを防止するため、loadStringEx() は、特定言語の XML ファイルがロードされていない場合にその XML ファイルをロードしません。特定言語の XML ファイルをロードする場合は、loadLanguageXML() を呼び出す適切なタイミングを決定してください。
パラメータ
stringID:String — ロードするストリングの識別 (ID) 番号。
|
|
languageCode:String — 言語コード。
|
String — languageCode パラメータで指定された言語による指定されたストリング ID に関連付けられたストリング値。
|
関連項目
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 |
| Player のバージョン : | Flash Player 9 |
デフォルトの言語コードを設定します。
パラメータ
langCode:String — 言語コードを表すストリング。
|
関連項目
defLang という変数を作成します。[ストリング] パネルで、[設定] ボタンをクリックして、[設定] ダイアログボックスを表示します。次に、2 つのアクティブな言語、つまり英語 (en) およびフランス語 (fr) を追加し、[ストリングの置き換え] ラジオコントロールを "via ActionScript at runtime" に設定し、[OK] をクリックします。[ストリング] パネルで、ストリング ID IDS_GREETING を追加し、アクティブな言語ごとにテキストを追加します。
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 |
| Player のバージョン : | Flash Player 9 |
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 |
| Player のバージョン : | Flash Player 9 |
指定されたストリング 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
このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート
現在のページ: http://livedocs.adobe.com/flash/9.0_jp/ActionScriptLangRefV3/fl/lang/Locale.html