3

私のプロジェクトには、1 つのソース コード ベースに対して 6 つのターゲットがあります。6 つのターゲットは、異なるプリプロセッサ ステートメントのおかげで、異なるコンテンツを持つ異なるプログラムです。

フランス語と英語の 2 つのローカリゼーションを定義しました。

ただし、4 つのプログラムはフランス語のみ、2 つのプログラムは英語のみにする必要があります。

現在、6 つのプログラムすべてでフランス語と英語を取得しています。

フランス語の 4 つのプログラムから英語を削除し、英語の 2 つのプログラムからフランス語を削除するにはどうすればよいですか?

ターゲット メンバーシップを試してみましたが、チェックボックスをオンにすることは、Localizable.strings (フランス語) と localizable.strings (英語) のどちらでも同じです。また、ターゲットのローカリゼーションのチェックを外そうとすると、それを削除しようとします...つまり、正しく行っていないか、方法がわからないだけです

助けてくれてありがとう

乾杯、ジービー

4

1 に答える 1

0

これに対する答えを見つけました。したがって、main.m ファイルで次のように入力します。

  // ---- target 1 app 1
#ifdef target1_VERSION

    [[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObjects:@"fr", nil]
                                              forKey:@"AppleLanguages"];
#endif

    // ---- target 2 app 2
#ifdef target2_VERSION

    [[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObjects:@"en", nil]
                                              forKey:@"AppleLanguages"];
#endif
于 2014-10-05T14:10:39.527 に答える