Как получить ISOCurrencyCode из ISOCountryCode в iphone SDK? - PullRequest
8 голосов
/ 08 августа 2010

У меня есть ISOCountryCode, и теперь я хочу получить код валюты этой страны из ISOCountryCode.Как мне этого добиться?

  NSString *countryCode =  < get from someother view>;     
  NSString *currencyCode = ?;

Я получаю этот код страны из какого-то другого представления о времени выполнения?

Ответы [ 2 ]

15 голосов
/ 08 августа 2010

Вам нужно будет использовать NSLocale.Чтобы получить код валюты из определенного кода страны:

NSString *countryCode = @"US";

NSDictionary *components = [NSDictionary dictionaryWithObject:countryCode forKey:NSLocaleCountryCode];
NSString *localeIdent = [NSLocale localeIdentifierFromComponents:components]; 
NSLocale *locale = [[[NSLocale alloc] initWithLocaleIdentifier:localeIdent] autorelease];
NSString *currencyCode = [locale objectForKey: NSLocaleCurrencyCode];

Вы также можете получить его для текущей локали, то есть для пользовательских настроек:

NSString *currencyCode = [[NSLocale currentLocale] objectForKey: NSLocaleCurrencyCode];
0 голосов
/ 20 мая 2016

NSLocale инкапсулирует богатый набор специфичной для домена информации, среди прочего у вас есть NSLocaleCurrencyCode:

 if let code = NSLocale.currentLocale().objectForKey(NSLocaleCurrencyCode) {
                print("\(code)")
            }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...