gpt4 book ai didi

iOS:viewWillDisappear 没有在从另一个 View Controller 动画的 popViewController 上被调用

转载 作者:行者123 更新时间:2023-11-29 04:26:26 25 4
gpt4 key购买 nike

我对 iOS 开发比较陌生,并且在弹出 View Controller 方面遇到问题。当按下后退按钮时,我需要从导航堆栈中弹出两个(或更多)UIViewControllers。因为我不希望它们全部动画化,所以我首先弹出除最后一个非动画之外的所有动画,然后弹出最后一个动画,但随后 -viewWillDisappear 不会只为最后一个动画调用。这是我的代码(这些代码是从 super UIViewController 调用的,所有其他代码都是从中扩展的):

//popping all but last one - viewWillDisappear getting called for these
[self.navigationController popToViewController:[self.navigationController.viewControllers objectAtIndex:j] animated:NO];
//popping last one - viewWillDisappear not getting called for this one
[self.navigationController popViewControllerAnimated:YES];
//also tried this but with same result:
//[((UIViewController*)[self.navigationController.viewControllers objectAtIndex:j]).navigationController popViewControllerAnimated:YES];

有人知道我在这里做错了什么,或者你能指导我如何正确实现我的需要吗?

最佳答案

当您加载新 Controller 时,viewWillDisappear 已被调用。我想,在做这样的事情时,只有顶级 Controller viewWillDissappear 会被调用。

另外为什么不直接弹出到所需的动画 View ?

如果您将 nslog 放入 View 中,您可能会发现调用 View 的同等数量将会消失。

让我知道你发现了什么。希望有帮助。

关于iOS:viewWillDisappear 没有在从另一个 View Controller 动画的 popViewController 上被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12273123/

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