从第二个过渡开始显示导航控制器

时间:2018-10-03 09:28:58

标签: ios swift uinavigationcontroller

为什么导航栏没有立即显示,而是仅在屏幕上几次转换后才显示?

第一个屏幕

First Screen

第二屏

Second Screen

第三屏

Third Screen

第四屏幕

Fourth Screen

情节提要之间的过渡是通过代码完成的

let storyboard = UIStoryboard(name: "detail", bundle: nil)
let vc = storyboard.instantiateViewController(withIdentifier: "Login") as! TwoViewController
self.present(vc, animated: true)

1 个答案:

答案 0 :(得分:0)

由于您是在展示视图控制器本身,因此它将没有任何导航控制器。如果您需要为Viewcontroller提供导航控制器,请提供NavigationController而不是viewcontroller。

let storyboard = UIStoryboard(name: "detail", bundle: nil)
let vc = storyboard.instantiateViewController(withIdentifier: "navigationControllerID") as! UINavigationController
self.present(vc, animated: true)

或-以编程方式用NavController包装VC。

let storyboard = UIStoryboard(name: "detail", bundle: nil)
let vc = storyboard.instantiateViewController(withIdentifier: "Login") as! TwoViewController
let nav = UINavigationController(rootViewController: vc)
self.present(nav, animated: true)