gpt4 book ai didi

ios - 不支持多次推送 View Controller?

转载 作者:可可西里 更新时间:2023-11-01 04:16:47 24 4
gpt4 key购买 nike

每当我尝试像这样切换 View 时,我都会收到以下错误:

-(void)changeView1ToView4 {
[self.navigationController1 pushViewController:view4 animated:YES];
}

当应用程序首次加载并且用户直接转到此 View 时,不会发生这种情况。只有当我转到其他 View 之一,返回主菜单,然后尝试转到此 View 时,才会发生此崩溃。

此外,如果您还不确定,我正在使用 UINavigationController。此代码也在应用程序委托(delegate)中,我从具有父 View 的 View Controller 调用它,因此我使用 .reference 来调用它,如下所示:

[self.reference changeView1ToView4];

有什么真正的方法可以解决这个问题吗?

谢谢!

编辑1:

[self.navigationController1 pushViewController:view4 animated:NO];
[self.navigationController1 pushViewController:view4 animated:YES];

I tried that and got this crash message in the console:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Pushing the same view controller instance more than once is not supported (<View2: 0x18d540>)'

最佳答案

当将 2 个 View 压入堆栈时,尝试调用:

[self.navigationController1 pushViewController:view4 animated:YES];

[self.navigationController1 pushViewController://secondviewcontrollername// animated:NO];

如果您尝试推送多个 View 并将 animated: 字段都设置为 YES,那么您会混淆堆栈。一次只为一个 View 设置动画。

关于ios - 不支持多次推送 View Controller?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7380326/

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