gpt4 book ai didi

ios - 当我的 UIViewController 在我的 Swift 应用程序中显示给用户时,如何检查它是否被查看?

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

我有一个带按钮的 UIViewController。这个按钮有一个连接到另一个 UIViewController 的转场,并且转场是 Show 类型。它看起来像这样:

self.performSegueWithIdentifier("myIdentifier", sender: user)

函数prepareForSegue是:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if (segue.identifier == "myIdentifier"){

if let frD = segue.destinationViewController as? MyNextClass,
...

现在,当用户按下按钮时,新的 UIViewController 会全屏弹出。它还有一个名为 exitButton 的按钮,它做一件事:

@IBAction func exitbuttonaction(sender: AnyObject) {

self.dismissViewControllerAnimated(true, completion: nil)
}

当用户按下它时 - 他们关闭了这个 View Controller ,他们看到了前一个。之前的容器有一个 viewWillAppear 函数,但每次用户从第二个 Controller 返回时都不会调用它。为什么不呢,因为它每次都会出现在用户面前?

另外,有没有其他方法可以区分父 Controller 何时出现在用户面前? (也许一些类似于 viewWillAppear 的其他功能可以在关闭第二个 Controller 时起作用)

最佳答案

您必须使用 UnwindSegueUnwindSegue 为您提供了一种“展开”导航堆栈并指定要返回的目的地的方法。你的 viewWillAppear 再也不会调用了,因为已经出现了。

如果你想知道什么是UnwindSegue,你可以查看这个答案:stackoverflow anser

如果你想知道怎么做,我推荐这些链接:

apple documentation about unwind segues

tutorial about unwind segues

youtube videotutorial

关于ios - 当我的 UIViewController 在我的 Swift 应用程序中显示给用户时,如何检查它是否被查看?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36926415/

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