Swift 4 后退按钮没有出现

Geo*_*nts 1 navigation uinavigationbar uinavigationcontroller swift

我有问题...我有两个 ViewControllers,我使用此代码从第一个 VC 传递到第二个

let storyBoard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
    let newViewController = storyBoard.instantiateViewController(withIdentifier: "EVSignInViewController") as! EVSignInViewController
    self.present(newViewController, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)

问题是..我想在第二个 VC 上显示后退按钮。我已经尝试在 1st VC 上使用 Editor->Embed in-> Navigation controller。我也用这个

navigationController?.setNavigationBarHidden(false, animated: true)
navigationItem.backBarButtonItem = UIBarButtonItem(title:"", style:.plain, target:nil, action:nil)
Run Code Online (Sandbox Code Playgroud)

Scr*_*ble 5

PresentingViewController 将模态地呈现在您当前的顶部。它实际上并没有将它推送到导航控制器导航堆栈上。

你要么需要push视图控制器

self.navigationController?.pushViewController(newViewController, animated: true)
Run Code Online (Sandbox Code Playgroud)

或将其包装在导航控制器中然后呈现

let storyBoard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let newViewController = storyBoard.instantiateViewController(withIdentifier: "EVSignInViewController") as! EVSignInViewController
let navigation = UINavigationController(rootViewController: newViewController)
self.present(navigation, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)