我正在做一个标签式应用程序工作负载的多个ViewControllers。它有一个TabBarController和4个ViewControllers附加到它。斯威夫特3 - 在推出
默认情况下,在推出仅FirstViewController
被加载。我想在开始之前通过标签菜单切换到第二个视图之前加载FirstViewController
和SecondViewController
。
是我的尝试,到目前为止,是我创建的自定义MyTabBarController
类,并试图用
var sv = SecondViewController()
sv.loadView()
在ViewDidLoad()
,但它加载过程中造成了致命的错误,因为从故事板(我猜测)的MapView元素不加载。
什么是同时加载的使用故事板元件两条viewControllers正确的方法是什么?到目前为止,我所有其他的尝试都没有成功。
您是否以编程方式创建您的UITabBarController?如果是这样,你可以编程方式创建每个视图控制器,并将它们分配给标签栏控制器的'viewControllers'属性。但这不是典型的设计模式。请问为什么你要这样做?是否出于性能原因(预加载第二个控制器以避免延迟)? –
嗯,如果我正确地得到您的问题 - 我创建TabBarController它在故事板,然后创建'MyTabBarController:UITabBarController'类,并指定以故事情节元素。我只是作为一种可能的方式来一次加载2个视图控制器,因为我认为它是必需的。我之所以需要他们在同一时间加载完全是为了避免延迟 –