2

どこでも NSLocalizedString(@"Text in deutsch",@"das Textfeld Text in deutsch") を使用しています 2 つの Localizable.strings ファイルがあります。1 つはドイツ語用、もう 1 つは英語用です。

今気づいたこと。ドイツ語の iPhone を使用している場合はドイツ語のテキストが表示され、iPhone を英語に設定している場合は英語のテキストが表示されます。しかし、フランス語と言うと、ドイツ語をキーとして使用しているため、ドイツ語のテキストも表示されますよね? 私のコードでどこでも使用されているドイツ語の代わりに、フォールバック言語として英語を設定する方法はありますか? (私は非常に多くの NSLocalizedString を使用しているため、どこでも (コード、Localized.string.en、および Localized.string.de で) キーを変更するのは面倒です)

4

2 に答える 2

0

ローカリゼーション (something.lproj) は常に選択されます。l10n が翻訳を提供する場合、キー自体は使用されません。これは、「DISCOMBOBULATE_OR_OK」のようなキーを使用できることを意味します。これは、適合する言語では「Discombobulate」に変換され、「Discombobulate」の翻訳が利用可能なスペースに対して長すぎる言語では「OK」に変換されます。

可能性:

  • Info.plist の CFBundleDevelopmentRegion の言語は、デフォルトの言語を選択するために使用されます。
  • 携帯電話の代替言語は、どこで購入したかによって異なります (たとえば、私の言語画面では、「英語」が常に1 番目または 2 番目に表示されます)。

英国/米国/オーストラリアの電話を持っている人にテストを依頼する価値があります.

于 2010-06-11T20:07:54.340 に答える