2016-12-07 105 views
1

我用故事板文件在我的应用程序,并有2层语言的支持,我创建是否可以在运行时更改故事板语言?

“本地化字符串”

两种语言,并有一个在

.storyboard文件

Base.lproj enter image description here

在登录时用户应该c更改语言,所以我需要在运行时更改语言......可以使用重新启动的应用程序吗?

这里是我的代码,但不工作:),原因 '捆绑' 未加载

var bundle = NSBundle.FromPath (NSBundle.MainBundle.PathForResource ("ru", "lproj")); 
      bundle.Load(); 
      var st = NSStoryboard.FromName ("Main", bundle); 
      NSViewController contentVC = st?.InstantiateControllerWithIdentifier (NSConstants.MainSplitViewControllerID) as NSViewController; 
      NSApplication.SharedApplication.Windows.FirstOrDefault().ContentViewController = contentVC; 

回答

0

使用本:

let path = Bundle.main.path(forResource: "ru", ofType: "lproj") 
     let bundle = Bundle(path: path!) 
     let storyboard = UIStoryboard(name: "Main", bundle: bundle)