我有这个结构:
Root View控制器 - > View Controller(语言选择)由modal segue提供。
是否可以使用委托来重新加载根视图控制器,以使用新选择的语言值来呈现它。我使用localize.strings条目选择运行时语言。问题在于,尽管语言发生了变化,儿童语言仍以新语言显示,但根视图仍然是旧语言。
非常感谢。
答案 0 :(得分:3)
获得委托或阻止后,您必须加载本地化的nib,并从中获取字符串。 NSLocalizedString
将从用户默认值加载首选语言,然后更改只会在重新启动应用后生效。这就是为什么你自己手动加载适当的lproj。
您可以查看演示应用here
答案 1 :(得分:1)
是使用委托方法或块。当在rootViewController中触发任何一个时,关闭子视图并进行更改。