gpt4 book ai didi

iphone - 嵌套的推送动画可能会导致导航栏损坏

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

在我的一个 View Controller 中,比方说 A,我有以下内容:

 OnbViewController *on = [[OnbViewController alloc] initWithNibName:nibName bundle:nil];
onboardingTutorial.delegate_ = self;
self.test = on
UINavigationController *nController = [[UINavigationController alloc] initWithRootViewController:self.test]
[self presentModalViewController:nController]
[nController release];

然后在 OnbViewController 中我已经推送到 navigationController:

[self.navigationController pushViewController:someViewController];

然后在 didSelectRowForIndexPath: 我调用了一个委托(delegate),它是 A,在我调用的委托(delegate)函数中我尝试通过执行再次推送:

[self.test pushViewController:someOtherViewController];

然后这给了我那个错误:

nested push animation can result in corrupted navigation bar
Finishing up a navigation transition in an unexpected state. Navigation Bar subview tree might get corrupted.
Unbalanced calls to begin/end appearance transitions for <someOtherViewController: 0x6f942e0>.

有什么想法吗?

最佳答案

相当复杂的调用顺序,但我看到的第一个问题是您似乎是在 OnbViewController 上调用 pushViewController,而不是在它的 navigationController 上。也许更改为 [self.test.navigationController pushViewController:someOtherViewController]; 就足够了吗?

编辑:在进一步观察时,我注意到“嵌套推送动画”中的“动画”。 onbViewController 是在其 viewWillAppear 期间或类似的早期某个地方推送到 someViewController 吗?也许跳过第二个动画会起作用?

关于iphone - 嵌套的推送动画可能会导致导航栏损坏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10115240/

24 4 0