【发布时间】:2018-03-20 02:25:00
【问题描述】:
我有很多视图控制器,分布在许多故事板上。
只有知道视图控制器标识符时,有什么方法可以将数据传递给视图控制器。
viewcontroller 标识符和 storyboard 名称是从 plist 中读取的,并且 viewcontroller 是这样加载的:
let storyboard = UIStoryboard(name: plistdata.storyboard, bundle: nil)
let vc = storyboard.instantiateViewController(withIdentifier: menuItem.identifier)
navigationController?.pushViewController(vc, animated: true)
由于我无法将视图控制器转换为正确的类,因此我无法设置数据。可以从字符串中转换一个类吗,比如
let vc = storyboard.instantiateViewController(withIdentifier: menuItem.identifier) as! ClassFromString("MyDestinationViewController")
或者让数据模型跟踪正在推送哪个视图控制器,并在目标视图控制器加载后立即在目标视图控制器中获取必要的数据是更好的方法吗?
【问题讨论】:
标签: ios swift xcode uiviewcontroller uistoryboard