私のようなローカリゼーションの初心者からこれと同様の質問がありますが、私にとってはうまくいく質問が見つかりませんでした。
これが私の問題です。形式のステートメントを使用して、NSArray 内のすべての ISO 国コードを取得できます[NSLocale ISOCountryCodes]
。さて、それらの国ごとに、現地通貨とその国で使用されている通貨コードを印刷したいと思います。これを行う適切な方法は何ですか?
US United States: (null) ((null)) という形式の行を取得するという意味では機能しない次のことを行いましたが、代わりに US United States: $ (USD) という形式の行を取得したい場合:
myCountryCode = [[NSLocale ISOCountryCodes] objectAtIndex:row];
appLocale = [[NSLocale alloc] initWithLocaleIdentifier: @"en_US"];
identifier = [NSLocale localeIdentifierFromComponents: [NSDictionary
dictionaryWithObject: myCountryCode
forKey: NSLocaleCountryCode]];
myDictionary = [NSLocale componentsFromLocaleIdentifier: identifier];
myCountryName = [appLocale displayNameForKey:NSLocaleCountryCode
value:[myDictionary
objectForKey:NSLocaleCountryCode]];
localCurrencySymbol = [appLocale displayNameForKey:NSLocaleCurrencySymbol
value:[myDictionary objectForKey:NSLocaleCurrencySymbol]];
currencyCode = [appLocale displayNameForKey:NSLocaleCurrencyCode
value: [myDictionary objectForKey:NSLocaleCurrencyCode]];
title = [NSString stringWithFormat:@"%@ %@: %@ (%@)", myCountryCode, myCountryName, localCurrencySymbol, currencyCode];
[appLocale release];
(上記の識別子、myCountryCode、myCountryName、localCurrencySymbol、currencyCode、および title はすべて NSString ポインターです。さらに、myDictionary は NSDictionary ポインターであり、appLocale は NSLocale ポインターです)。基本的に、上記のコードは、その場で各行のタイトルを生成したいピッカービューになります。
どうぞよろしくお願いいたします。基本的に問題は、ISO 国コードを取得したら、その特定の国の通貨記号と通貨コードを (アプリケーション ロケールで) どのように出力できるかということです。