【发布时间】:2019-01-22 08:01:29
【问题描述】:
我无法通过推送显示 ViewController。我有这个代码,它适用于现在。但我需要改变它来推动。我尝试使用 self.navigationController?.pushViewController(slideMenuController, animated: true) 但这对我不起作用。
func navToRecord() {
let mainViewController = kMainStoryboard.instantiateViewController(withIdentifier: "NQTPrivateOfficeViewController") as! NQTPrivateOfficeViewController
let leftViewController = kMainStoryboard.instantiateViewController(withIdentifier: "NQTLeftViewController") as! NQTLeftViewController
let nc = odrexNavigation(rootViewController: mainViewController)
let slideMenuController = EVTSlideMenuController(mainViewController: nc, leftMenuViewController: leftViewController)
slideMenuController.automaticallyAdjustsScrollViewInsets = true
mainViewController.navigationItem.leftBarButtonItem = UIBarButtonItem(title: NSLocalizedString("Завершить", comment: "finishOdrex"), style: .plain, target: self, action: #selector(action))
self.present(slideMenuController, animated: true, completion: nil)
UIApplication.shared.keyWindow?.makeKeyAndVisible()
}
【问题讨论】:
-
self在这种情况下必须包裹在UINavigationController中才能推送到导航堆栈上,但似乎不是 -
@Scriptable 那么我如何在代码中做到这一点?
-
您需要在导航控制器中拥有这个 VC 才能设置 self.navigationController。所以
let nav = UINavigationController(rootViewController: ThisViewController())
标签: swift uiviewcontroller navigation