Android i18n 國際化 原

本文節選自《Netkiller Java 手札》

Netkiller Java 手札

Mr. Neo Chan, 陳景峯(BG7NYT)

中國廣東省深圳市望海路半島城邦三期 518067 +86 13113668890 <[email protected]>

$Id: book.xml 606 2013-05-29 09:52:58Z netkiller $

版權 © 2015-2018 Neo Chan

版權聲明

轉載請與作者聯繫,轉載時請務必標明文章原始出處和作者信息及本聲明。

http://www.netkiller.cn

http://netkiller.github.io

http://netkiller.sourceforge.net

我的系列文檔

編程語言

Netkiller Architect 手札

Netkiller Developer 手札

Netkiller Java 手札

Netkiller Spring 手札

Netkiller PHP 手札

Netkiller Python 手札

Netkiller Testing 手札

Netkiller Cryptography 手札

Netkiller Perl 手札

Netkiller Docbook 手札

Netkiller Project 手札

Netkiller Database 手札

 

第 37 章 Internationalization i18n with Android (國際化)

目錄

37.1. 創建國際化文件

37.2. strings.xml 文件

37.3. 翻譯語言

37.4. 引用國際化文件

37.5. 切換語言

37.1. 創建國際化文件

進入 Android Studio 文件菜單 File -> New -> New Resource File

在左側列表中找到 Locale 點擊 “>>” 按鈕

選擇國家後,點擊 OK 按鈕即可。

資源文件夾中已經顯示出國際化文件,上面並有對應的國旗。

查看項目文件夾

neo@MacBook-Pro ~/AndroidStudioProjects/locale % find app/src/main/res | grep values
app/src/main/res/values-zh-rCN
app/src/main/res/values-zh-rCN/strings.xml
app/src/main/res/values
app/src/main/res/values/colors.xml
app/src/main/res/values/dimens.xml
app/src/main/res/values/styles.xml
app/src/main/res/values/strings.xml

37.2. strings.xml 文件

<resources>
    <string name="app_name">Netkiller</string>
    <string name="title_home">Home</string>
    <string name="title_dashboard">Dashboard</string>
    <string name="title_notifications">Notifications</string>
</resources>

37.3. 翻譯語言

再 res/values/strings 目錄上面單擊鼠標右鍵,打開 Open Translations Editor 翻譯編輯器。

單擊地球圖標,添加 zh-cn 語言

現在就可以對照翻譯語言包文件了。

37.4. 引用國際化文件

String test = "Sign Up";

String test = getResources().getString(R.string.sign_up);
R.string.browserSentence = "You are using $1%s to browse the Internet.";

String browser = getString(R.string.browserSentence, browser.getBrowser());
TextView textView = new TextView(this);
TextView.setText(“Sign Up”);

TextView textView = new TextView(this);
textView.setText(R.string.sign_up);
<TextView
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:text="Hello World!" />

<TextView
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:text="@string/hello_world" />

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章