gpt4 book ai didi

ios - IOS 中的 viewDidLoad 与 ViewWillAppear

转载 作者:搜寻专家 更新时间:2023-10-31 21:56:36 24 4
gpt4 key购买 nike

请帮我解决这个问题。如图所示,我创建了一个具有两个 View 的简单项目。我附上了 Storyboard和 swift 文件的图像。所以,我读到 viewdidload 在将 View 加载到内存中时只会执行一次。但是,当我从第二个 View 转换到第一个 View 时,viewdidload 再次执行,viewdidload 方法中的打印语句也是如此。

有人请给我解释一下。 enter image description here enter image description here

最佳答案

viewDidLoad 不会为应用程序调用一次。当 View 保存内存并加载时,它会为该 viewController 调用一次。

所以你推送到 viewController 的次数越多,它就会调用 viewDidLoad

  • viewDidLoad() — 当 View Controller 的内容 View (顶部它的 View 层次结构)被创建和加载

  • viewWillAppear() — 用于您希望始终执行的任何操作在 View 变得可见之前发生。

有关此内容的更多信息,请查看链接:https://developer.apple.com/library/content/referencelibrary/GettingStarted/DevelopiOSAppsSwift/Lesson4.html

所以如果 View 已经在内存中(像你的情况),那么不需要再次推送,只需要通过这段代码弹出

self.navigationController?.popViewControllerAnimated(true)

关于ios - IOS 中的 viewDidLoad 与 ViewWillAppear,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40211547/

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