我有一个没有笔尖的应用程序。它的rootviewcontroller是一个tableviewcontroller。我正在推送到第二个tableviewcontroller,它控制一个detailview。就在本周早些时候,我已成功推送到下一个tableviewcontroller。几天后(可能保存错误的版本后),
我得到了
当我选择一个表项时,(lldb)在pushViewController方法中有一个断点。我为所有启用的异常都设置了断点。如果我再按两次播放按钮,我会在输出框中显示:
“ **由于未捕获的异常'NSInternalInconsistencyException'终止应用程序,原因:' - [UITableViewController loadView]加载了”TopicsDetailViewController“笔尖,但没有得到UITableView。'”
这里有什么问题,还是我需要在项目的其他地方寻找?
这是在我的标题界面中:
TopicsDetailViewController *tdvController;
:)这是我的didSelectRowAt ......
tdvController = [[TopicsDetailViewController alloc] init];
tdvController.aFeed = afeed;
[self.navigationController pushViewController:tdvController animated:YES];
tdvController = nil;
谢谢你,让我知道我是不是在叫错树。
答案 0 :(得分:1)
如果我正确理解了这一点,那么接口文件中的tdvController声明的名称与实例方法中的tdvController相同,您将获得异常。
如果您的意图是在此实例方法中创建和使用实例变量,请不要再次声明它,只需执行:
self.tdvcController = [[TopicsDetailViewController alloc] init];
在堆上创建对象。
如果您打算在此实例方法中使用类型为TopicsDetailViewController的局部变量,而不是iVar,则将局部变量重命名为其他变量。