私は自分のアプリでローカリゼーションを使用していましたが、何らかの理由での文字列(一部ではない)の一部が翻訳されません。代わりに値。私は、アプリケーションがこれを行うことによってローカライゼーションファイルを見つけるかどうかを調べようとしました:iOSの値ではなくキーを表示するアプリケーションのローカライゼーション
NSString *enPath = [[NSBundle mainBundle] pathForResource:@"en" ofType:@"lproj"];
NSString *hePath = [[NSBundle mainBundle] pathForResource:@"he" ofType:@"lproj"];
NSString *ruPath = [[NSBundle mainBundle] pathForResource:@"ru" ofType:@"lproj"];
NSString *esPath = [[NSBundle mainBundle] pathForResource:@"es" ofType:@"lproj"];
NSString *frPath = [[NSBundle mainBundle] pathForResource:@"fr" ofType:@"lproj"];
NSString *arPath = [[NSBundle mainBundle] pathForResource:@"ar" ofType:@"lproj"];
そしてどれもnilではありません。
ローカライゼーションファイルの名前を確認しましたが、それはLocalizable.strings
です。 キーがLocalizable.strings
ファイル内に存在するかどうかを確認します。
私も試してみた:
- キャッシュを空にする
- は、すべてのターゲットをクリーニング
- すべてのローカリゼーションファイルを削除し、再作成します。
また、this質問にあるすべてを実行しようとしました。
これは単なるシミュレータ/キャッシュの問題ではないと言うことが重要です。また、アプリをダウンロードする端末にも表示されます。 (私はエンタープライズアカウントを持っています)。
問題を特定し解決するために何ができるのですか?
にファイルの名前を変更することができ、あなたのファイルがLocalizable.stringかのLocalizable.stringsと呼ばれていますか? –
ファイル名はLocalizable.stringsです。 –