强制语言更改通知iOS
我的应用程序正在本地化,我们关注方言。 (即在西class牙语和西class牙语在peurto rico之间的区别)我注意到,只是改变区域不会推动通知到应用程序,将触发本地化..只有改变语言触发这个通知。
在我的应用程序委托,我想检查,如果该区域已经改变了我的applicationDidBecomeActive方法,如果它有,我想推iOS通知,如果语言已经改变了..这是可能的吗?
每次你的应用程序返回到前台(而不是当它变得活跃),获取当前的语言环境。 将最新的区域设置与以前的区域设置进行比较。 如果新的和以前的语言环境对您来说足够不同,请发布通知。
示例 – 从西class牙到墨西哥应该将语言环境从es_ES
更改为es_MX
。
编辑 :
要发布通知,您可以执行以下操作:
[[NSNotificationCenter defaultCenter] postNotificationName:NSCurrentLocaleDidChangeNotification object:nil];
以编程方式发布通知:
[[NSNotificationCenter defaultCenter] postNotificationName:NSCurrentLocaleDidChangeNotification object:self userInfo:nil];