我目前在iPhone应用程序时,使用NSLocale得到当前的货币符号工作正常,但是当我按下home键的应用程序切换到后台进程,我改变货币(设置>>国际>> Regionformat >>像美国,印度等)以这种方式,然后打开从背景下,应用程序的货币符号没有改变,但我导航到另一个屏幕则涉及到以前的屏幕只货币更改,但我希望当我打开从后台的应用程序,那么货币符号自动改变。 如何解决这一问题? 我需要你的帮助
谢谢
我试图代码在这里:
NSLocale *theLocale = [NSLocale currentLocale];
Getdollarsymbol = [theLocale objectForKey:NSLocaleCurrencySymbol];
NSString *Code = [theLocale objectForKey:NSLocaleCurrencyCode];
请试试这个代码。 让我知道这是工作,
在-viewDidLoad:
添加行:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(refreshCurrencySymbol) name:NSCurrentLocaleDidChangeNotification object:nil];
然后:
-(void) refreshCurrencySymbol
{
NSLocale *theLocale = [NSLocale currentLocale];
NSString *symbol = [theLocale objectForKey:NSLocaleCurrencySymbol];
NSLog(@"Symbol : %@",symbol);
NSString *code = [theLocale objectForKey:NSLocaleCurrencyCode];
NSLog(@"Code : %@",code);
}
谢谢。
怎么样以下几点:
[NSLocale autoupdatingCurrentLocale]
苹果文档中提到
对象始终反映当前用户的区域设置的当前状态。