好的,所以我完成了一个教程,让我以这种方式从 appDelegate.m 文件填充 TableViewController。
UINavigationController *navController = (UINavigationController *) self.window.rootViewController;
MasterViewController *masterController = [navController.viewControllers objectAtIndex:0];
masterController.bugs = bugs;
我正在尝试自己的小应用程序进行一些练习,但我这样做的方式是我的 TableViewController 不是 rootViewController。这是之后的下一个视图。我正在使用情节提要来创建我的 GUI,不确定这是否需要了解。
基本上我的对象有一个成员是和数组,我想在 appDelegate 文件中创建对象,并用我的对象中的数组填充 TableViewController。
以下是一些额外的细节:
有人建议我将 0 索引替换为 1 但我收到此异常错误
2012-10-07 21:34:23.785 EasyBudget[5257:f803] * 由于未捕获的异常“NSRangeException”而终止应用程序,原因:“* -[__NSArrayI objectAtIndex:]:索引 1 超出范围 [0 .. 0]” *首先抛出呼叫堆栈:( 0x14b5022 0xeb5cd6 0x14a1644 0x20c8 0x16386 0x17274 0x26183 0x1139fef5 0x1139fef5 0x1489195 0x139fef5 0x139fef5 0x1489195 0x132ff2 0x1489195 0x13edff2 0x13ech8da 0x13ebd84 0x13ebc9b 0x16c65 0x18626 0x12fd 0x11065 0x1)终止称为抛出异常
我理解异常的原因。出于某种原因,我的导航控制器中保存不同视图的数组只有一个 0 索引。我只是不确定如何解决这个问题。我以 Navigation Controller -> ViewController(这是我的根视图关系)-> Table View Controller(这是我要访问的视图)的方式设置我的故事板。我从根视图控制器向表视图控制器添加了一个带有 push segue 的条形按钮项。当我在添加代码之前构建和运行一切正常时,我可以按下我的按钮,它从我的视图控制器转到我的表视图控制器,我能够按下导航栏自动制作的后退按钮以返回我的视图控制器。我希望这一切都正确完成。任何更多的帮助将不胜感激。