gpt4 book ai didi

ios - Swift:关于 presentScene() 的安全实践

转载 作者:行者123 更新时间:2023-11-28 15:44:34 24 4
gpt4 key购买 nike

在我的程序中,viewController 之间的一些转换是通过以下代码以编程方式管理的:

let storyBoard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let newViewController = storyBoard.instantiateViewController(withIdentifier: "NewViewController") as! NewViewController
self.present(newViewController, animated: true, completion: nil)

我一直想知道这种做法的安全性。当 presentScene 被调用时,它会做任何事情来“删除”它下面的屏幕,还是只是在现有 View 之上堆叠更多 View ?如果没有,它是如何工作的?这也是管理这种程序化转换的最佳方式(就性能而言)吗?

最佳答案

首先,您不需要每次都创建UIStoaryboard 的对象,除非您有不同于Main 的名称。修改您的代码:

let newViewController = self.storyBoard!.instantiateViewController(withIdentifier: "NewViewController") as! NewViewController

现在开始回答您的问题!当您在另一个 UIViewControllerUINavigationController 上呈现任何 UIViewController 时,呈现的 Controller 没有堆栈。

简而言之,您将在被呈现者 UIViewController 上以模态方式呈现一个 UIViewController。这可以在没有任何关系规则的任何 UIViewController 中发生。演示者应注意解散它所呈现的 VC。

希望这能消除您的疑虑。

关于ios - Swift:关于 presentScene() 的安全实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43314818/

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