【发布时间】:2012-06-12 18:31:31
【问题描述】:
像我这样的本地化新手也有类似的问题,但我找不到一个对我有用的问题。
这是我的问题。我们可以使用[NSLocale ISOCountryCodes] 形式的语句在NSArray 中获取所有ISO 国家代码。现在,对于每个国家,我想打印当地货币以及该国家使用的货币代码。这样做的适当方法是什么?
我做了以下在我得到表格行的意义上不起作用 美国 美国: (null) ((null)) 相反,我想获得表格的行 美国 美国:$ (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指针)。本质上,上面的代码将在一个pickerview中,我想在其中动态生成每一行的标题。
非常感谢您的宝贵时间。本质上的问题是,一旦我们有了 ISO 国家代码,我们如何打印(在应用程序区域设置中)该特定国家的货币符号和货币代码。
【问题讨论】:
-
您能否更具体地了解“不起作用”?它是否崩溃,您是否得到了您不期望的东西的列表,条目是否太少?不要让我们猜测。
-
谢谢。我更新了我的帖子。本质上的问题是,一旦我们有了 ISO 国家代码,我们如何打印(在应用程序区域设置中)该特定国家的货币符号和货币代码。
标签: ios objective-c iso