【发布时间】:2016-07-07 20:46:39
【问题描述】:
我调用了一些代码来更改导航控制器内视图控制器的 viewWillAppear 部分中的语言。
当我点击后退按钮时,即使我在 viewWillAppear 中有代码,语言也不会发生变化。唯一一次切换是当我一直回击到原始屏幕然后开始向前移动时它会改变。有没有办法让 viewWillAppear 中的功能起作用?
这是我的代码,我正在使用更改语言的 pod:
//MARK: Language change
//used to change language text for imediate screens
func setText(){
locationsLabel.text = "Locations".localized()
languageLabel.text = "Languages".localized()
termsOfUseLabel.text = "Terms of Use".localized()
privacyPolicyLabel.text = "Privacy Policy".localized()
pushNotificationsLabel.text = "Push Notifications".localized()
contactUsLabel.text = "Contact Us".localized()
}
// Changes text to current language
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
NSNotificationCenter.defaultCenter().addObserver(self, selector: "setText", name: LCLLanguageChangeNotification, object: nil)
}
// Remove the LCLLanguageChangeNotification on viewWillDisappear
override func viewWillDisappear(animated: Bool) {
super.viewWillDisappear(animated)
NSNotificationCenter.defaultCenter().removeObserver(self)
}
【问题讨论】:
-
你能告诉我们
viewWillAppear()的代码吗? -
@LukeVanIn 我用我的代码更新了问题
标签: ios swift viewwillappear