Skip to content

10 多言語化

多言語化する場合、以下2つの文字列リソースの実装を行っていただく必要があります。

  • アプリ上で表示される文字列(Localizable.strings ファイル)
  • 「設定 > アプリ名」内で表示される文字列(Settings.bundle > Root.strings ファイル)

10.1 アプリ上で表示される文字列の多言語化

Xcode 上でプロジェクトに対して、各言語ごとに(日英の場合は、日本語用と英語用) Localizable.strings ファイルを作成していただく必要があります。

以下、導入の手順となります。

アプリプロジェクトを Xcode で開き、ツールバーから File > New > File と進みます。
表示された画面上で iOS > Resource > Strings File をクリックし、ファイル名を Localizable.strings で新規作成します。

XCode 画面左側のナビゲーションエリアにおいて、作成された Localizable.strings を選択します。
この状態で、画面右側のユーティリティエリアの中段「Localization」において、「Localize…」ボタンをクリックします。

ここでは例として English を作成します。

Finder でプロジェクト内のファイルを確認すると、en.lproj フォルダ内に、Localizable.strings ファイルが作成されていることが確認できます。

Xcode 上で、「PROJECT」の Info タブを開くと、画面中段「Localizations」において、各国語バージョンを加えることができる「+」ボタンがあります。
このボタンをクリックして、 Japanese を選択します。

Finder でプロジェクト内のファイルを確認すると、en.lproj フォルダと同列のディレクトリに ja.lproj フォルダが作成されます。
その中にも Localizable.strings ファイルが作成されています。

英語、日本語の Localizable.strings ファイル内に、以下の内容をそれぞれコピーして貼付けてください。

英語

"popinfoTitle1" = "Information";
"popinfoLabel1" = "No message received.";
"popinfoButton1" = "Open in Safari";
"popinfoButton3" = "Close";
"popinfoDialog5" = "Error";
"popinfoDialog6" = "A network error occurred, please try again later."; 
"popinfoDialog7" = "Connection refused, please restart your app.";

日本語

"popinfoTitle1" = "お知らせ一覧";
"popinfoLabel1" = "お知らせはありません";
"popinfoButton1" = "URLを開く";
"popinfoButton3" = "閉じる";
"popinfoDialog5" = "Error";
"popinfoDialog6" = "通信に失敗しました。通信状況の良い場所でもう一度お試しください。";
"popinfoDialog7" = "接続エラーが発生しました。通信状態の良好な場所でアプリを再起動してください。";

10.2「設定 > アプリ名」内で表示される文字列の多言語化

「設定 > アプリ名」で表示される文字列は、SDK 内の Settings.bundle > Root.strings ファイルに記述されている内容が反映されます。

日本語と英語については、デフォルトで具備しています。
その他の言語を対象とする場合は、以下の手順で他の言語を追加してください。

ここでは中国語を例に説明します。

Xcode 上で、左側ナビゲーションエリアに配置された SDK ファイル群のうち、Settings.bundle が存在することを確認してください。
その配下に、英語用の en.lproj フォルダと Root.plist ファイル、日本語用の ja.lproj フォルダと Root.plist ファイルがあります。

Settings.bundle を右クリックし「Show In Finder」を選択します。

Finder が現れます。Settings.bundle を右クリックし「パッケージの内容を表示」をクリックします。

表示された en.lproj フォルダを同じ階層にコピーします。

コピーしたフォルダの名前を zh-Hans.lproj (簡体字中国語)に変更します。
そして、このフォルダ配下の Root.strings ファイル内に記述されているキーに対する値を中国語に直します。