0

現在、友人のために書いたアプリのローカライズに忙しくしています。さまざまな翻訳で完璧に機能します。私が見つけようとしているのは、「カスタム」ローカリゼーションを実装する方法です。例として、en_US と en_US_Slang があるとします。後者をローカリゼーションのリストまたは NSLocalisedString の下に追加するにはどうすればよいでしょうか?

状況を説明すると、この男はバンドの情報を保持するために 2 つの別々のアプリケーションを実行していました。1 つは MS Access ベースで、もう 1 つは Filemaker Pro ベースでした (図を見てください!)。

バンドのさまざまなメンバーがどちらか一方を使用しています。彼が両方を設計したので、両方を使用するのは彼だけです。

現時点では、アプリ (iOS ではなく Mac アプリ) を起動すると、以前に FMP または Access ユーザーであったかどうかを尋ねられます。

これに基づいて、ローカライズされた文字列はさまざまなアプリで使用される用語に戻ります。

つまり、MSAccess では、バンドのギグの場所は "Function Premises" と呼ばれていましたが、FMP では同じことが "Gig Location" と呼ばれていました。彼ら全員を再訓練する必要がないようにするために (彼らが私のために景品の誕生日のギグをやってくれたので、私は無料でやっています)、最も簡単な方法は、彼らが慣れ親しんだラベルをすべて同じに保つことだと思いました.

私が解決できることから、それは次のとおりです。

[[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObject:@"en_Access"] forKey:@"AppleLanguages"];

[[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObject:@"en_FMP"] forKey:@"AppleLanguages"];

問題を掘り下げる前に知りたいので、誰かがこれを確認するか、おそらく正しい方向に向けることができますか(おそらくいくつかのAppleドキュメント?)

ありがとう

4

1 に答える 1

1

基本的に、ここでのアイデアは、差別化された文字列を取得するために、独自のロケール (en_Access および en_FMP) を定義することです。システムは有効であることがわかっているロケール識別子のみを認識するため、Mac OS X (または iOS) でこれを実行できるとは思えません。

逸話として、ここで説明されているように、Microsoft Windows でカスタム ロケールを作成できます。しかし、Mac OS X ではありません。

于 2013-11-06T13:38:26.367 に答える