1. プロジェクトのResourcesを右クリック→追加→新規ファイルを選ぶ
  2. Mac OS Xテンプレートの中からOther→Strings Fileを選ぶ
  3. ファイル名は「Localizable.strings」にする
  4. プロジェクトに追加された「Localizable.strings」の情報を表示し、「ファイルをローカライズ可能にする」ボタンをクリック
  5. 最初はEnglishしか無いので、「ローカリゼーションを追加」ボタンを押してJapaneseを追加する
  6. プロジェクトの「Localizable.strings」ファイルの左に三角マークが付くのでクリックして展開し、「Japanese」の情報を表示する
  7. 「一般」タブをクリックし、エンコーディングを「Unicode (UTF-16)」に設定する【重要】

これで準備は整いました。

次に、
「Localizable.strings」の「Japanese」をxcodeで開き、

"New" = "新規作成";
"Open" = "開く";
・・・

と言うように”キー”=”文字列”;という組み合わせで文字列を書き込みます。

あとは、

[[NSBundle mainBundle] localizedStringForKey:@"New" value:@"New" table:nil]

などと呼び出せば、言語環境に合わせて文字列データを引っ張ってきてくれます。

第一引数がキー。
第二引数はキーが見つからなかった場合のデフォルト文字列。
第三引数は文字列ファイル名(nilでLocalizableになる)。

なので、第二引数に英語の文字列を書いておき、「Localizable.strings」の「Japanese」やその他の言語にローカライズした文字データを書いておけばよさそう(英語のstringsファイルは空っぽのまま)。

ネットを徘徊するとNSLocalizedString()を使ったやり方もある模様。

記事検索

アーカイブ