我有两个名为MeasurementsVC.swift和OutfitBuilder.swift的UIViewController类。但是,我没有这些UIViewControllers的nib文件。我想将它们加载到UITabBarController中,以便可以在两个UIViewControllers之间切换。基于the swift swift tutorial,我的AppDelegate文件中包含以下内容
func application(application: UIApplication!, didFinishLaunchingWithOptions launchOptions: NSDictionary!) -> Bool {
// Override point for customization after application launch.
let tabBarController = UITabBarController()
let myVC1: UIViewController = OutfitBuilderVC()
let myVC2: UIViewController = MeasurementsVC()
let controllers = [myVC1,myVC2]
tabBarController.viewControllers = controllers
window?.rootViewController = tabBarController
let image1 = UIImage(named: "tshirtIcon.jpg")
let image2 = UIImage(named: "measureTape.jpg")
myVC1.tabBarItem = UITabBarItem(title: "tshirtIcon", image: image1, tag: 1)
myVC2.tabBarItem = UITabBarItem(title: "measureTape", image: image2, tag:2)
return true
}
现在显示的只是一个蓝色屏幕,底部带有灰色选项卡。我认为问题可能出在线路上
let myVC1: UIViewController = OutfitBuilderVC()
let myVC2: UIViewController = MeasurementsVC()
我应该如何调用这些现有的UIViewControllers?两个UIViewControllers都可以独立运行。我在单独的项目中创建了它们,作为唯一的UIViewController。
最佳答案
好吧,您正在使用情节提要吗,对吗?
如果您正在使用情节提要,则只需ctrl用鼠标将一条线从UITabBarController拖到UIViewControllers ...(一行到OutfitBuilderVC(),另一行到MeasurementsVC()),然后在黑色的小选项菜单中只需将鼠标放到UIViewController之一上,然后单击Relationship Segue-> view controllers,就会出现。
之后,您可以擦除您在AppDelegate中编写的所有代码,因为情节提要板可以为您处理所有事情...您还可以在其中定义vc的图标和标题...
您正在执行的方法实际上是,我认为在旧的XCode 3中没有情节提要的地方。但是今天您应该使用情节提要
关于ios - 快速将现有的没有nib文件的UIViewControllers添加到UITabBarController,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27285109/