IOS学习-报错误 Finishing up a navigation transition in an unexpected state. Navigation Bar subview tree might get corrupted.
2024-08-21 01:11:17
环境: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;
} }
最新文章
- Angular2中对ASP.NET MVC跨域访问
- WeedFS依赖库 0.6.1
- Plug-in 'org.eclipse.cdt.ui' contributed an invalid Menu Extension
- hdu 5276 YJC tricks time 数学
- UltraEdit 列模式
- oracle输出多行多列数据
- 关于华为交换机bpdu enable. ntdp enable. ndp enable解析
- python运维开发(十一)----线程、进程、协程
- PHP常见错误
- 版本控制工具--svn和git的使用(三) -----git的使用(2)
- PAT1084:Broken Keyboard
- Ubuntu16.04安装cuda9.0+cudnn7.0
- 【java设计模式】(3)---代理模式(案例解析)
- node.js的Promise库-bluebird示例
- IO流总结笔记二
- POJ 3262 Protecting the Flowers 【贪心】
- VirtualBox 端口转发 SSH
- nginx反向代理实例
- WDA基础二:界面,元素介绍
- Spring Boot 揭秘与实战(一) 快速上手
热门文章
- Codeforces446C DZY Loves Fibonacci Numbers(线段树 or 分块?)
- hdu 4850 Wow! Such String!(字符串处理,yy)
- UVALive 6187 Never Wait for Weights 带权并查集
- Install wxWidgets-3.0.2 on GNU/Linux Debian
- iOS多线程 GCD
- 安卓app缓存设置
- mysql新建用户本地无法登录
- sin=in.readLine();
- WPF之通过EventTrigger修改模板中元素的属性
- Centos下修改启动项和网络配置