【发布时间】:2020-03-06 20:59:33
【问题描述】:
我有以编程方式完成的标签栏控制器。并且标签栏工作正常。在 stroyboard 中,我创建了 firstViewController 并分配了类名 firstViewController。当我尝试在选项卡栏控制器上的第一个 vc 上进行选项卡导航到第一个视图控制器时,它崩溃了。如果我以编程方式给出意味着它可以正常工作。
如何以编程方式从标签栏控制器导航到情节提要视图控制器。
这是我的标签栏控制器代码:
let tabBarCnt = UITabBarController()
func createTabBarController() {
let firstVC = FViewController()
firstVC.tabBarItem = UITabBarItem(tabBarSystemItem: .search, tag: 0)
let secondVC = SViewController()
secondVC.tabBarItem = UITabBarItem(tabBarSystemItem: .more, tag: 1)
let thirdVC = ViewController()
thirdVC.tabBarItem = UITabBarItem(tabBarSystemItem: .history, tag: 2)
let fourthVC = ViewController()
fourthVC.tabBarItem = UITabBarItem(tabBarSystemItem: .downloads, tag: 3)
if UIDevice.current.userInterfaceIdiom == .pad {
let controllerArray = [firstVC, secondVC, thirdVC, fourthVC]
tabBarCnt.viewControllers = controllerArray.map{ UINavigationController.init(rootViewController: $0)}
self.view.addSubview(tabBarCnt.view)
} else {
let controllerArray = [firstVC, secondVC]
tabBarCnt.viewControllers = controllerArray.map{ UINavigationController.init(rootViewController: $0)}
self.view.addSubview(tabBarCnt.view)
}
}
这是我的firstViewController的firstVC代码:
import UIKit
class FViewController: UIViewController, UITabBarDelegate {
@IBOutlet weak var firstBtn: UIButton!
@IBOutlet weak var fview: UIView!
override func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = UIColor.blue
// self.fview.backgroundColor = .brown
// Do any additional setup after loading the view.
}
}
【问题讨论】:
-
什么是崩溃报告
-
它的显示为零..
标签: ios swift uiviewcontroller storyboard uitabbarcontroller