Tips

Android アプリケーション開発 ローカライズ【Android TIPS】

Android アプリケーション開発 ローカライズ【Android TIPS】

前回は文字列リソースファイルであるstrings.xmlについて紹介しました。

HelloWorldプログラムに表示されている「Hello world!」という文字は、このstrings.xmlの中に定義されているのです。

いちいち「strings.xml」。めんどくさくないですか?

開発中は、表示する文字をソースコード上にそのまま書いてしまったほうが圧倒的に楽です。

レイアウトファイルを作成中にいちいちstrings.xmlと行ったり来たりする必要がないですし、なによりkey文字列を何にするか悩む必要がありません。

まずは、よくない例。「strings.xml」を使わないで表示する文字を変更してみましょう。

「res/layout/activity_main.xml」をダブルクリックします。

WS000137

赤枠の部分を「Nice to meet you!(hard code)」に書き換えます。

WS000138

画面レイアウトファイル「activity_main.xml」上に文字列を直接設定しました。

実行するとこのようになります。

device-2012-09-14-154452

文字列リソースファイル「strings.xml」を参照せずに、画面レイアウトファイル「activity_main.xml」に直接設定した値が画面上に表示されています。

このことを「ハードコーディング」といいます。

では、なぜわざわざ文字列を別ファイルに保存しているのでしょうか?

答えは簡単です。

ずばり、アプリケーションを「ローカライズ」するためです。

ローカライズとは、アプリケーションをいろいろな国、いろいろな端末で動かせるように対応することを指します。

国際化、多言語対応など呼ぶこともあります。

さっそく、実践してみましょう。

(先ほど修正した「Nice to meet you!(hard code)」は「@string/hello_world」に戻しておいてください。)

Androidアプリ開発の必須知識!JAVAプログラミングを学べる連載リンク

はじめてのJAVA 連載

Recent News

Recent Tips

Tag Search