Kotlin Android 高效入門
線上課程
  • Kotlin Android 高效入門
  • Android 開發準備
    • 0 Git 版本控制系統
      • 0.1 Gitlab 網站
      • 0.2 Gitlab 範例專案
      • 0.3 Gitlab 取得本書範例
      • 0.4 版本切換
    • 1 Android 系統與應用程式
      • 1.1 Android 版本演進
      • 1.2 Android 系統架構
      • 1.3 應用程式基礎
      • 1.4 應用程式元件
      • 1.5 應用程式宣告檔
      • 1.6 Android Studio 開發環境
    • 2 開發環境安裝
      • 2.1 基礎環境-JDK
      • 2.2 整合開發工具-Android Studio
      • 2.3 必要的設定
  • Android 專案開發
    • 3 Android 專案架構與 Activity
      • 3.1 建立Bmi專案
      • 3.2 AndroidManifest.xml載運清單
      • 3.3 畫面配置-Layout
      • 3.4 Java/Kotlin 類別
      • 3.5 資源 Resources
      • 3.6 Android Support Library-支援函式庫
    • 4 版面配置環境
      • 4.1 版面配置設計畫面
      • 4.2 ConstraintLayout 版面配置
      • 4.3 LinearLayout 流水式版面
      • 4.4 元件的高度與寬度
      • 4.5 元件位置與距離
    • 5 Kotlin 語言基礎
      • 5.1 Kotlin 基礎知識
      • 5.2 類別與物件
    • 6 Activity 設計
      • 6.1 Bmi 專案功能設計
      • 6.2 MainActivity 中取得畫面元件
      • 6.3 按鈕的事件處理
      • 6.4 使用浮動顯示-Toast類別
      • 6.5 使用對話框-AlertDialog 類別
      • 6.6 多國語言
      • 6.7 按鈕事件處理-匿名類別與 lambda
  • 線上課程
    • 20 線上課程 courses
Powered by GitBook
On this page
  • 建立版面字串資源
  • 建立語系資源檔-正體中文
  • 設定模擬器語系
  • 測試

Was this helpful?

  1. Android 專案開發
  2. 6 Activity 設計

6.6 多國語言

Previous6.5 使用對話框-AlertDialog 類別Next6.7 按鈕事件處理-匿名類別與 lambda

Last updated 5 years ago

Was this helpful?

Android 應用程式可在不同語言的環境中顯示不同的介面語系,當使用 者的手機使用的是英文環境時,應用程式以英文介面顯示,而手機是中文環境時,自動切換為中文介面。要達到多國語系支援,必須在設計時準備:

■ 建立版面中的文字的字串資源 (String resource)

■ 建立語系字串資源檔,也就是翻譯資料

測試時在模擬器中更換語系,即可驗證 APP 是否適用於不同語系環境, 以下將使用同一個 Bmi 範例專案,為其建立字串資源與語系字串資源檔。 為使用者介面建立多國語言之前,先要為畫面中所使用到的字串一一建 立成為字串資源。

建立版面字串資源

在範例版面中,需要將畫面中的「Weight」、「Height」、「Calculate BMI」、「Help」 等 字 串, 由 Layout 中 抽 離 至 字 串 資 源 檔「res/values/ strings.xml」。

請先點擊預覽畫面中的 Weight(TextView),再按下「Ctrl + B」快速到 XML 宣告處,選擇「android:text」屬性值,選擇後,再按下「Alt+Enter」 (Mac 為 Option + Enter),如下圖:

在一個字串值處按下 Alt+Enter 時,會出現快速選單,請點擊第一個項 目「Extract string resource」抽取字串至字串資源檔,再按下 Enter 鍵選擇, 可在對話框中的 Reource name 宣告一個代表體重的名稱,如「weight」, 如下圖所示:

輸入 weight 後按下 Enter 完成字串抽取,原本的 Weight 字串成為參考 字串資源,如下:

<TextView
            android:text="@string/weight"
            android:layout_width="wrap_content"

請用同樣方法, 找到 Height 文字方塊 (TextView) 宣告處, 設定 「android:text」屬性值,如下圖:

抽取建立一個名為「height」的字串資源,如下圖:

再取抽按鈕上的文字「Calculate BMI」成為「calculate_bmi」字串資源, 如下:

最後也將「Help」按鈕文字抽取成為「help」字串資源。

完成字串抽取後,請開啟 res/layout/activity_main.xml,在預覽畫面的上方點擊快速圖示列中的地球圖示下拉選單,選擇「Edit Translations」,如下圖:

開啟翻譯編輯器後,其中列出目前字串資源所定義的資料,如下圖:

建立語系資源檔-正體中文

接著開始建立中文語系的字串資源檔,點擊翻譯編輯器上方的地球圖示後,在下拉選單中點擊「Chinese(zh)」,如下圖:

在右邊多出一個 Chinese(zh) 欄位中,輸入各個資源的中文翻譯,如下圖:

完成後,會產生第二個 strings.xml 資源檔,當使用者手機環境語系是中文時,會使用這個資源檔中的字串,如下圖:

檔案內容如下:

設定模擬器語系

在執行前,請先將模擬器的語系設定為正體中文,步驟如下:

1. 在主畫面中由底部往上滑

2.點擊 Settings 設定

3.點擊最下方的「System」

4.再點擊「Languages & input」

5.再點擊「Languages」

6.點擊「Add a language」

7.向下捲動至最後,選擇「繁體中文」

8.再選擇「台灣」

9.最後將繁體中文 ( 台灣 ) 拉到第一個位置,如下圖:

測試

在「Android Studio」執行 Bmi 專案,在模擬器中畫面使用的文字都換成中文語系資源,如下圖: