在子视图控制器关闭后重新加载根视图控制器

时间:2012-10-07 20:03:22

标签: objective-c ios

我有这个结构:

Root View控制器 - > View Controller(语言选择)由modal segue提供。

是否可以使用委托来重新加载根视图控制器,以使用新选择的语言值来呈现它。我使用localize.strings条目选择运行时语言。问题在于,尽管语言发生了变化,儿童语言仍以新语言显示,但根视图仍然是旧语言。

非常感谢。

2 个答案:

答案 0 :(得分:3)

获得委托或阻止后,您必须加载本地化的nib,并从中获取字符串。 NSLocalizedString将从用户默认值加载首选语言,然后更改只会在重新启动应用后生效。这就是为什么你自己手动加载适当的lproj。

您可以查看演示应用here

答案 1 :(得分:1)

是使用委托方法或块。当在rootViewController中触发任何一个时,关闭子视图并进行更改。