アプリのローカライゼーションに奇妙な問題があります。以前のバージョンではうまくいきましたが、ローカライゼーションファイルの変更はありませんでしたが、最近何らかの理由で作業が中断されました(私は1つの言語を追加しましたが、それだけです)。iOS:ローカライゼーションが断続的に壊れています
Xcodeオーガナイザ(Xcode 3.2.5)を使用してビルドをインストールすると、ローカリゼーションは時々動作します。 OSでの言語設定の変更は何もしないようです。 Xcodeオーガナイザからアンインストールしてから再インストールしても問題はありません。
ローカリゼーションAPIが自分のリソースを見つけることができないようです。私は、この機能を使用して、ローカライズされなければならない文字列をプリントアウトするために私のViewControllersの一つに、いくつかのNSLog()ステートメントを追加しました:
NSLog(@"Value: %@", [[NSBundle mainBundle] localizedStringForKey:@"MY_KEY" value:@"none found" table:nil]);
ローカライズが動作しているとき、これは予想される結果を出力します。ローカリゼーションが機能していない場合、これは "none found"を出力します。私はバンドルの内容をチェックしており、.lprojファイルはすべてそこにあります。私は何が欠けていますか?
編集:私がビルドした後、様々な言語の* .lproj/Localizable.stringsファイルが正しく作成されないことがあります。私はドイツ語のファイルに触れることができ、正しく生成されますが、次回ビルドを実行するときには正しくありません。すべてのLocalizable.stringsファイルのエンコーディングは現在UTF-16に設定されていますが、私は運が無ければUTF-8に切り替えようとしました。私は、文字列ファイルに問題があることを示すために、ビルドログに警告やエラーが表示されません。
これが原因だと思われます。プロジェクトに追加された別のターゲット用の別の翻訳がありました。一度私はそれらの名前を変更した、すべてがうまくいくようです。 – mayonaise