gpt4 book ai didi

ios7 - 警告 : Attempt to present UINavigationController on UINavigationController while a presentation is in progress

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

我在 didSelectRowAtIndexPath 中选择一个 segue 时收到上面的警告。这发生在 iPad 上。 iPhone 给出了不同的警告,我会看看是否可以解决这个问题。

我在方法中确实有两个转场。第一个工作顺利。第二个拿起警告。我环顾了网络,并检查了其他人的解决方案。 nada,所以我在这里发帖..

这是代码:(我愿意接受更好的编写方法!)

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
//NSLog(@"%s", __FUNCTION__);

if ((indexPath.section == 0) || (indexPath.section == 1) || (indexPath.section == 2)) return;
if (indexPath.section > 4) return;

//Images THIS WORKS OK
if (indexPath.section == 3 && indexPath.row == 0) {
viewController1 = [[ViewController1 alloc] init];
[self performSegueWithIdentifier:@"detailToV1" sender:self];
[self.tableView reloadData];
}

if (indexPath.section == 3 && indexPath.row == 1) { // THIS REDULTS IN A WARNING
viewController2 = [[ViewController2 alloc] init];
[self performSegueWithIdentifier:@"detailToV2" sender:nil];
}

//Notes THIS WORKS OK BUT I HAD TO USE A NIB TO AVOID THE WARNING
if (indexPath.section == 4 && indexPath.row == 0) {

viewController3 = [[ViewController3 alloc] init];
[[self navigationController] pushViewController:viewController3 animated:YES];
[self.tableView reloadData];

}
}

最佳答案

ViewController3的父类是什么?这听起来像是一个导航 Controller ,据我所知,你不能从另一个导航 Controller 中推送一个导航 Controller 。如果你想做类似的事情,你需要从第一个导航 Controller 中呈现新的导航 Controller 。

编辑:

基本上,如果您使用导航 View Controller 推送另一个 View Controller ,那么新的 View Controller 将保留在导航 View Controller 的“内部”。 (导航 VC 具有同时管理多个 VC 的逻辑。)我相信有一条规则,即任何导航 VC 都不能位于另一个导航 VC 的“内部”。因此,您需要简单地退回到普通的 VC 表示,以便新的导航 VC 不在原始导航 VC 的“内部”。它不是在它里面,而是在它上面。

代码示例:

[self.navigationController presentViewController:ViewController3 animated:YES completion:nil]

关于ios7 - 警告 : Attempt to present UINavigationController on UINavigationController while a presentation is in progress,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21386613/

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