zoukankan      html  css  js  c++  java
  • IOS学习-报错误 Finishing up a navigation transition in an unexpected state. Navigation Bar subview tree might get corrupted.

    环境:XCODE:5.0.2  IOS7模拟器 

    界面:使用storyboard 拖拽

    简单应用:一个CoreData的CRUD用例。

    界面如下图(一个UITableViewController 列表   查询和删除  选择UITableViewCell后显示详细页面 一个UIViewController 进行编辑或添加数据)

    TableViewController  点击 +号 Push跳转到 DetaiViewController;选择Cell后也Push到DetailViewController(identifier为:detailViewByCell)跳转

    都用连线实现。

    在页面跳转到的时候出现如上报错,导致 导航子视图可能损坏 。

    根据错误信息在DetaiViewController里输出导航的子视图

        NSLog(@"%@",self.navigationController.viewControllers);

    输出:

    发现DetailViewController 有2个 很明显跳转的时候 出现问题

    原因是UITableViewCell 在选择的时候 用连线的时候直接PUSH到了DetailViewController,

    而在代码里也实现了跳转

        [self performSegueWithIdentifier:@"detailViewByCell" sender:p];

    去掉此处代码,至于需要传参可在prepareForSegue中传参

    -(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
       
    if ([segue.identifier isEqualToString:@"detailViewByCell"]) {
            TRDetailViewController* detailVC=[segue destinationViewController];
            Person* p=self.persons[ [self.tableView indexPathForSelectedRow].row];
                detailVC.editPerson=p;
        }
       
       
    }
  • 相关阅读:
    spring源码怎么解决循环依赖?
    观察者模式
    单例模式
    Python 列表(List)
    python字符串(str)
    内置函数
    python运算符
    函数名的应用 闭包 迭代器
    生成器,推导式
    python的起源
  • 原文地址:https://www.cnblogs.com/zhangqifeng/p/4003410.html
Copyright © 2011-2022 走看看