7

ユーザーの場所に応じてアプリを変更できるようにしたい。以下のコードを使用しています:

NSLocale *locale = [NSLocale autoupdatingCurrentLocale];
    NSString *countryCode = [locale objectForKey: NSLocaleCountryCode];
    NSString *countryName = [locale displayNameForKey: NSLocaleCountryCode value: countryCode];
    NSLog(@"countryName %@", countryName);

これはうまく機能しますが、 がどのように表示されるかを知りたいcountryNameので、スイッチケースをセットアップできます。それぞれの国が正確にどのように綴られているかわからない場合は困難です: USA、United States、United States of America など. Apple の countryCode のリストはありますか?見つかりません。

また、結果が英語であることを確認する方法はありますか?

4

3 に答える 3

10

Apple はISO-3166 標準を使用しています。

于 2011-08-24T02:21:21.547 に答える
2

NSLocale ICU - International Components for Unicode (Apple はここにコピーを保持します) からデータCFLocaleを取得します。このファイルには、通常返されるほぼすべての情報が含まれています。/icuSources/common/uloc.cpp

ただし、/cldrFiles/supplementalData.xml一次ソースである可能性があります。このファイルは、CLDR-Unicode Common Locale Data Repositoryから取得されます。

于 2016-02-03T15:58:12.040 に答える