flash.globalization 套件概觀

Flash Player 10.1 以及更新的版本,Adobe AIR 2.0 以及更新的版本

flash.globalization 套件使用基礎作業系統的文化支援功能。讓您輕鬆撰寫應用程式,以符合個別使用者的文化慣例。

套件的主要類別包含下列各項:

  • Collator 類別,管理字串的排序和比對

  • CurrencyFormatter 類別,將數字格式化為貨幣金額字串,以及將輸入字串剖析為貨幣金額和符號

  • DateTimeFormatter 類別,格式化日期值

  • LocaleID 類別,擷取特定地區設定的資訊

  • NumberFormatter 類別,格式化和剖析數值

  • StringTools 類別,處理字串的區分地區設定的大小寫轉換

flash.globalization 套件與資源當地語系化

flash.globalization 套件不會處理資源當地語系化。不過,您可以使用 flash.globalization 地區設定 ID,做為利用其他技術擷取當地語系化資源的索引鍵值。例如,您可以使用 ResourceManager 和 ResourceBundle 類別來當地語系化透過 Flex 所建置的應用程式資源。如需詳細資訊,請參閱當地語系化 Flex 應用程式

Adobe AIR 1.1 也包含協助當地語系化 AIR 應用程式的一些功能,如當地語系化 AIR 應用程式所述)。

國際化應用程式的一般方法

下列步驟說明如何使用 flash.globalization 套件國際化應用程式的高階常見方法:

  1. 判斷或設定地區設定。

  2. 建立服務類別的實體 (Collator、CurrencyFormatter、DateTimeFormatter、NumberFormatter 或 StringTools)。

  3. 使用 lastOperationStatus 屬性檢查錯誤和後援。

  4. 使用地區設定特有設定的格式和顯示資訊。

下一個步驟是載入和顯示地區設定特有的字串和使用者介面資源。這個步驟包括以下工作:

  • 使用 autolayout 功能來調整 UI 的大小,以符合字串長度

  • 選擇正確的字體並支援後援字體

  • 使用 FTE 文字引擎以支援其他撰寫系統

  • 確定已正確處理輸入法編輯器

檢查錯誤和後援

flash.globalization 服務類別都遵循類似的樣式來識別錯誤。也會共用樣式,從無法使用的要求地區設定,後援為使用者作業系統所支援的地區設定。

下列範例顯示如何在初始化服務類別時檢查錯誤和後援。每種服務類別的 lastOperationStatus 屬性都會指出最新的方法呼叫是否已觸發其錯誤或警告。

var nf:NumberFormatter = new NumberFormatter("de-DE"); 
if(nf.lastOperationStatus != LastOperationStatus.NO_ERROR) 
{ 
    if(nf.lastOperationStatus == LastOperationStatus.USING_FALLBACK_WARNING) 
    { 
        // perform fallback logic here, if needed 
        trace("Warning - Fallback locale ID: " + nf.actualLocaleIDName); 
    } 
    else 
    { 
        // perform error handling logic here, if needed 
        trace("Error: " + nf.lastOperationStatus); 
    } 
}

這個範例只會追蹤是否使用後援地區設定 ID 或發生錯誤的訊息。您的應用程式可以執行其他錯誤處理邏輯 (需要時)。例如,您可以向使用者顯示訊息,或強制應用程式使用支援的特定地區設定。