[iPhone SDK] アプリケーションのローカライズ
iPhoneアプリを作っていて、一通り作り終わったら最後にやる作業の一つとして、ローカライズがある。
たまにしか実施しないので、毎回やり方を忘れてしまい本を参照しているが、今回はメモを残してみる。
ソースコード中で NSLocalizedString() でローカライズした文字列は、genstrings を使って、Localizable.strings を作り、そのファイルを各言語ごとに編集することで実現する。
自分はいつもプログラムの置かれているディレクトリにTerminalで移動して、コマンドラインで下記を実行している。これにより、実行したディレクトリに Localizable.strings が生成される。
genstrings ./Classes/*.m
genstrings で生成された Localizable.strings をXcodeにインポートして、右クリックで「情報を見る」から「ファイルをローカライズ可能にする」でローカライズできるようにしてから、「ローカリゼーションを追加」で言語を追加する。
インポートの際には、エンコーディング には UTF-16 を選ぶ。UTF-8 では文字化けするようだ。


その後、各言語用に生成された Localizable.strings を編集していく。
例えばこんな感じ。
/* Mon */ "Monday" = "月曜日"; /* No Address */ "No Address" = "住所なし";
xib ファイルのローカライズに関しても、上記と同様に右クリックで「情報を見る」から「ファイルをローカライズ可能にする」→ 「ローカリゼーションを追加」でファイルをローカライズ言語数分用意して、Interface Builderでそれぞれのxibファイルを開いてローカライズしていく。
アプリ名のローカライズに関しては、InfoPlist.strings ファイルを作成し、上記と同様にローカライズ可能な状態にして、
CFBundleDisplayName = "Locations";
と記載しておけばよい。
なぜかこれらが全て書かれた本が見つからない。手元にある本は、どの本もこの中の一部だけしか載っていないようだ。
とりあえず下記2冊を買えば全部載ってます。参考まで。
| はじめてのiPhone3プログラミング | |
![]() |
Dave Mark Jeff LaMarche 鮎川 不二雄
ソフトバンククリエイティブ 2009-12-17 おすすめ平均 |
| iPhoneSDK開発のレシピ | |
![]() |
高山 恭介 広部 一弥 松浦 晃洋
秀和システム 2010-03 おすすめ平均 |
関連記事
-
-
[iOS SDK] Studyplus の API を利用してみる
学習管理プラットフォーム「Studyplus」がAPIを公開——外部教材アプリとの連携を強化 | T
-
-
[iOS SDK] UIDeviceOrientation ではまる
すぐURLが変更されそうだが、2013/02/16 時点だと、Supporting Multiple
-
-
[iOS SDK] Miselu C.24 対応(Bluetooth MIDI対応)
自作アプリの Miselu C.24 対応(というかBluetooth MIDI対応)を行ったので、
-
-
iOS15にアップデート
2021/09/21にiOS15が公開され、そろそろ初期不具合もわかってきた頃だと思いアッ
-
-
[iPhone 開発関連本] SQLite入門 第2版 西沢直木
SQLite はそれなりにクセがあるらしく、今までに入手した知識とFMDBのソースコードだけ(FMD
-
-
iPhone SDK の教科書 読了
先週末にiPhone SDKの教科書 を読了。 サンプルプログラムも手打ちで全て入力して作ってみた。
-
-
2009年9月発売のiPhone SDK関連書籍
9月は書店に行くたびにiPhone SDK関連本が増えていて驚いた。 調べてみたところ、少なくとも下
-
-
[iOS SDK] iTunes Connect ではまる
iOS8リリースに合わせてiTunes Connect のUIが大幅に変わっており、下記のページの方
-
-
新作アプリReibunを@marie__100さんに紹介していただきました
@marie__100さんに英語学習アプリ Reibunを紹介いただきました。ありがとうございました
-
-
[iOS9] viewWillAppear で部品の位置が確定しなくなった
どうやら iOS9 から viewWillAppear では部品の位置が確定しなくなったらしく、vi


不備は多々あるが良書である
Cを知っていてiPhoneアプリを作ってみたい人に。