gpt4 book ai didi

iphone - popViewController/viewWillAppear 在 iOS 5 中没有动画

转载 作者:行者123 更新时间:2023-12-03 18:56:32 26 4
gpt4 key购买 nike

我没有幸运地找到这个,所以我们开始;)

我有一个带有自定义UINavigationBarUIViewController,它将另一个UIViewController作为 subview 推送。

一切正常,除了当我单击 subview 上的后退按钮时。预览(第一个) View 显示正确,但不是动画。 UINavigationBar 的动画是正确的,只是 View 立即切换。

第一个 UIViewController 的函数 - (void)viewWillAppear:(BOOL)animated 被调用,对于 animated。仅当我使用 iOS 5 进行测试时才会发生这种情况,而不是使用 iOS 4 进行测试时才会发生这种情况。

有人知道如何解决这个问题吗?

感谢您的帮助!汉内斯

更新1

我刚刚删除了所有自定义代码,只使用了普通的 UINavigationBar (因此没有额外的设置),但它仍然无法在 iOS 5 上使用。这是我在第一个 ViewController 中使用的代码推送第二个 ViewController:

[self.navigationController PushViewController:secondViewController 动画:YES];

正如我已经提到的 - 当我单击第二个 View 上导航栏中的后退按钮时,第一个 View 会立即出现,没有动画。

如有任何帮助,我们将不胜感激!谢谢!

更新2

我觉得我已经接近这个问题了,但仍然没有解决方案:

我刚刚添加了一个自定义的UINavigationController,我只是在其中调用[super popViewControllerAnimated:animated]。这个 get 被正确调用(动画为 YES),但第一个 UIViewControllerviewWillAppear 获取的动画值为 NO...

最佳答案

我今天遇到了类似的问题,UIViewControllerviewWillAppear 中没有得到 NO,除了标准的 UINavigationBarUINavigationController

事实证明,这是由于在不应该的地方手动调用 viewWillAppear:YES 造成的。 This item表明它也可能是由于在某处调用错误的 super 方法引起的(例如 [super viewWillAppear:animated] 而不是 [super viewDidAppear:animated]viewDidAppear 内部)。

至于使用自定义UINavigationBar,我今天遇到了这个链接,它可能对您的情况有所帮助:http://sloshire1.posterous.com/simple-fix-for-viewwillappear-in-ios5

关于iphone - popViewController/viewWillAppear 在 iOS 5 中没有动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8898828/

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