2010年11月22日月曜日

iPhoneローカライズのメモ

いろんなところに情報があるけど、自分でやった分のメモ。

まず、何も考えずにアプリを作る。
だいたい形ができたところで、文字列 (@"~")を指定している部分は
NSLocalizedString(@"~", @"")
とする。
その後おもむろに、コンソールを立ち上げて
genstring (.mファイル)
とすると、カレントディレクトリに Localizable.String ファイルができるので、en/ なり ja/ なりコピーする。
これでソース中でたとえば、
NSLog(@"Connection failure!!");
なんて書いてる場所を
NSLog( NSLocalizedString(@"Connection Failure!!", @"") );
として、ja/Localizable.Strting に
"Connection Failure!!" = "接続できませんよ!"
なんて書くと、端末の言語設定が日本語になっていれば、"接続できませんよ!"とログに吐きだされる。
注意点としては、 genstring の挙動で、Localizable.String が既にあっても上書きしちゃってマージしてくれないので、Localizableファイルを作成するのは遅ければ遅い方が楽ってこと。
Localizableファイルがなければ、NSLocalizedString はそのままの文字列を出力してくれるので、問題は起きない。

以上。

0 件のコメント:

コメントを投稿