4

古い iOS5 のように iOS6 の xCode 4.5 で NSLocalizedString(@"KEY", @"") で Localizable.strings を使用する方法はありますか?

これが私のサンプルコードです:

Localizable.strings
"KEY" = "Hello World!";

.m スクリプト では
NSString *tempString = NSLocalizedString(@"KEY", NULL);
NSLog(@"My String is: %@", tempString);

iOS5.1 のログは、「My String is: Hello World!」です。
iOS6 のログは「My String is: KEY」

…マジでヤバい!私のエラーはどこですか?どうもありがとう!!!

4

6 に答える 6

4

新しいプロジェクトを作成してコピーする必要はありません。ローカライズ可能なファイルを削除して、もう一度作成すれば問題ありません。

于 2012-12-17T07:22:21.843 に答える
1

投稿の回答を見てください:ローカリゼーションを追加すると、IOS 文字列のローカリゼーションが機能しなくなります

わたしにはできる。クリーン ビルド + シミュレーター (または電話) から削除して、エラーを修正します。

于 2013-01-04T23:17:41.163 に答える
1

現在のアプリのローカライズされた文字列は、iO6 でも機能します。私は通常、 NSLocalizedString(@"KEY", NULL); を使用します。5.1 で正しく動作していますか?

于 2012-09-26T20:02:07.493 に答える
0

文字列ファイルの行末にセミコロンがありませんでした。プロジェクトを再度ビルドするときにクリーンアップしても、コンパイラはそれを報告しませんでした。最初に XCode を再起動した後、エラーが報告され、それを見つけて修正することができました。

于 2013-03-05T14:45:59.460 に答える
0

私が見つけた唯一の解決策は次のとおりです。

  1. xCode テンプレートからの新しいプロジェクトで再起動します
  2. 少なくとも 2 つの言語のローカライズを有効にする
  3. 破損したプロジェクトからすべての古いファイル内にドラッグします
  4. 古い絵コンテの内容を新しい絵コンテにコピーする
  5. 必要に応じて頻繁にスナップショットを作成する

どこに問題があったのか本当にわかりませんが、今ではすべて正常に機能しています。

于 2012-09-27T21:12:27.403 に答える
0

シミュレーターの言語設定を変更します。

于 2012-11-28T07:38:24.480 に答える