ちなみに、iPhoneエミュレータも言語環境設定できます。
 こんな感じ。

Fig.1

 まあ、いったん英語のままで、いろいろ実験してみる。

Localizable.stringが無い場合

 ということで、ボタン右クリック(1ボタンマウスならコントロール+クリック)でLocalizable.stringを押して出てくるメニューから削除を選ぶ。

Fig.2

Localizable.stringファイルは後で利用するから、出てきたアラートでは「参照を削除」を選択。

Fig.3

あとは、ビルド>クリーニングメニューでターゲットをクリーニング。

Fig.4

これをしないと、アプリケーション側にLocalizable.stringが残ったままの状態になってるから注意。これで実行すると

Fig.5

て、かんじで"chimpanzee!"が表示されます。
 つまり、別にLocalizable.stringが用意されてなきゃ、ソースに書いた文字列がそのまま表示されるって仕組みみたい。
 これは、結構ありがたいです。プログラミングする時はNSLocalizedString使っときゃ、そのままでも動くし、その気になったときにいつでも多国対応もできる。文字列の抽出はgenstringsコマンドを使えば、探す手間も無い。いい感じ。

英語の文字列を追加してみる
 んじゃ、今度はちゃんと英語環境なら英語出すように英語用Localizable.stringを追加してみる。英語は「ISO 639-1言語コードと.lprojという接尾辞で構成」ということ(iPhone OSプログラミングガイド読んでるけ?)からen.lprojとなるわけですな。
 ま、せっかくなんで、二カ国語対応にしちゃいましょう。
 さっき外したja.lproj/Localizable.stringをもう一度追加(やり方はiPhoneアプリ開発、その(41)参照)。
 次にファインダー上でja.lprojを複製して名前をen.lprojとする。
 このen.lproj/Localizable.stringを同じように追加(ドラッグ先の位置に注意)する。

Fig.6

 こうすると以下のように2つファイルが並ぶ事になる。ファンダー上の構造と逆な状態ですな。

Fig.7

でもって、en.lproj/Localizable.stringの"chimpanzee!"には"chimpanzeeeeeee!"を直接エディタから書き込み

"chimpanzee!" = "chimpanzeeeeeee!";

で、実行させると

Fig.8

ちゃんと英語用の文字が表示される。言語を日本語にしたら~

Fig.9

ほら、チンパンジー。

Fig.6

いやいや、グレートですな。
次回はドラッグアンドドロップを使わない国別リソース追加方法。

あすとらびすた!あみーご。