1

プロジェクトを開発しているので、ローカリゼーションの準備をして、すべての文字列を文字列マクロ NSLocalizedString 呼び出しに追加し、Localizable.string を使用してこれらのキーに値を与えたいと考えています。

xCode プロジェクト内から文字列ファイルを作成し、そのファイルを en.lproj フォルダーに保存しました。しかし、私がそれを使用するようになったとき、Localizable.strings に入力されたキー値がコードに登録されなかったため、表示されていた文字列はマクロに入力したキーでした。ただし、Localizable.strings ファイルを en.lproj フォルダー以外に保存すると、すべてが期待どおりに機能します。ローカライズ用のすべてのアイテムを .lproj フォルダーに保存する必要があると思っていたので、これは奇妙に思えます。

これを行う正しい方法を誰かに教えてもらえますか。また、将来問題が発生する可能性があります。

4

2 に答える 2

0

「表示されていた文字列は、マクロに入力したキーでした。」

あなたはそれらを後ろに持っていますか?localizable.strings ファイル内のキーと単語の 1 つを交換してみて、それが問題かどうかを確認してください。

于 2011-11-09T15:41:21.950 に答える
0

en.lproj のときに機能しなかった理由は、文字エンコーディングでしょうか?

チェックアウト:

http://www.icanlocalize.com/site/tutorials/iphone-applications-localization-guide/

「Localizable.strings ファイルの文字列が翻訳済みファイルに存在するが、iPhone でローカライズされていない場合は、ファイルの文字エンコーディングを確認してください。

iPhone シミュレーターとは異なり、iPhone は UTF-16 でフォーマットされた文字列ファイルのみを認識します。シミュレーターとデバイスは常に同じように動作するとは限らないため、常にデバイスでローカリゼーションをテストしてください。」

于 2011-11-09T15:39:28.007 に答える