[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 おすすめ平均 |
関連記事
-
iPhone XR予約開始
10/19(金)はiPhone XRの予約開始日だった。おそらく大量に作っているだろうということで予
-
WEB+DB PRESS 総集編〔Vol.1~72〕購入
71号のHeroku特集を買いにいったらすでに売っていなかったが1から72号までの総集編があったので
-
ついにうちにもジェットブラックが来た。
予約から1ヶ月、ようやくうちにもiPhone 7 Plus ジェットブラックがきた。(2016/10
-
App Annie App Store 連携失敗
App Annie の App Store 連携機能を使って、日々のストアの売り上げをメールで受け
-
FlashAir W-03活用開始
ようやく休みになったので、FlashAir W-03を活用してみることにした。まずは、iOSから使え
-
Apple Special Event 2019
https://japanese.engadget.com/2019/09/10/5-iphone
-
EDAMTimestamp と NSDate の相互変換
Evernote SDKを使ったアプリで EDAMTimestamp を DBに格納する前に NSD
-
iPhoneとBluetooth連携できる体重計 タニタ RD-900
iPhone と連携できる体重計には以前から興味があって、Withings の WS-30 を狙って
-
OMNI OUTLINER and GRAFFLE活用ガイド 折中良樹
Macで図を描きたくてドロー系ソフトを探し、OmniGraffle体験版を使い、図を描いたら期限が切
-
省メモリプログラミング
昔買った「省メモリプログラミング」を読み返してみたら、Objective-Cで採用している参照カウン