gpt4 book ai didi

ios - 用 NavigationViewController swift 呈现 ViewController

转载 作者:IT王子 更新时间:2023-10-29 04:58:53 30 4
gpt4 key购买 nike

我有系统“NavigationViewController -> MyViewController”,我想以编程方式在第三个 View Controller 中呈现 MyViewController。问题是我在 MyViewController 中没有导航栏。你能帮助我吗?

var VC1 = self.storyboard.instantiateViewControllerWithIdentifier("MyViewController") as ViewController
self.presentViewController(VC1, animated:true, completion: nil)

最佳答案

调用 presentViewController 在现有导航堆栈之外 模态 呈现 View Controller ;它不包含在您的 UINavigationController 或任何其他内容中。如果你想让你的新 View Controller 有一个导航栏,你有两个主要选择:

选项 1. 将新的 View Controller 推送到您现有的导航堆栈上,而不是以模态方式呈现它:

let VC1 = self.storyboard!.instantiateViewControllerWithIdentifier("MyViewController") as! ViewController
self.navigationController!.pushViewController(VC1, animated: true)

选项 2。将新的 View Controller 嵌入到新的导航 Controller 中并以模态方式呈现新的导航 Controller :

let VC1 = self.storyboard!.instantiateViewControllerWithIdentifier("MyViewController") as! ViewController
let navController = UINavigationController(rootViewController: VC1) // Creating a navigation controller with VC1 at the root of the navigation stack.
self.present(navController, animated:true, completion: nil)

请记住,此选项不会自动包含“后退”按钮。您必须自己建立一个封闭的机制。

哪一个最适合您是一个人机界面设计问题,但通常很清楚什么最有意义。

关于ios - 用 NavigationViewController swift 呈现 ViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25444213/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com