3

私はいくつかのストーリーボードを使用していますが、それらをローカライズすることにしました (.strings ファイルは Xcode によって生成されています)。

[ビルド フェーズ] > [バンドル リソースのコピー] で、ローカライズに関連するすべてのリソースが赤で表示されていることに気付きました。

Xcode のスクリーンショット

実行時には、ローカリゼーションはメイン ストーリーボードでのみ機能します。Localizable.strings によるローカライズも機能します。しかし、それは他の絵コンテにはありません。

Xcodeを再起動しようとしましたが、何も変わりませんでした。(ベースの国際化と複数のストーリーボードが正しく機能しない を参照)

私のローカライズされたストーリーボードは以前にコンパイルされました。別のストーリーボードを追加してローカライズし、コンパイルを起動すると、次のエラーで失敗します。

*** キャッチされない例外 'NSInvalidArgumentException' が原因でアプリを終了しています。理由: 'バンドル NSBundle に 'Maintenance' という名前のストーリーボードが見つかりませんでした (...)

この問題を解決するアイデアはありますか?

4

3 に答える 3

0

「バンドル リソースのコピー」でコピーできない赤い Localizable.strings またはその他のローカライズ ファイルの理由の 1 つは、ターゲット設定の「ローカライズ ネイティブ開発リージョン」の設定である可能性があります。

このリージョンは、プロジェクトの「ローカリゼーション」に追加する必要があります。

つまり、'Localization native development region' が 'en' の場合、プロジェクト設定で Localization として 'English' を追加する必要があります。

于 2014-01-12T18:06:07.170 に答える