我正在开发一个带有登录屏幕(UIViewController)的应用程序(使用 Storyboard),它将经过身份验证的用户带到 Tab 应用程序(UITabbarController)。Tab Bar Item 之一基于我为其添加了 UINavigationController 的 Table View Controller。为了开发表格屏幕,我正在关注 iOS 5 第 2 部分(Bird Sighting Example)。我已经成功创建了除此表格部分之外的整个应用程序。我在 AppDelegate 中感到困惑,因为我的根视图控制器在 BirdSighting 示例中登录屏幕并且在大多数示例中,应用程序从 Navigation View Controller 或 Tabbar Controller 启动。我正在粘贴我的 AppDelegate 方法。
这是运行时错误,我收到“由于未捕获的异常‘NSInvalidArgumentException’而终止应用程序,原因:‘不支持推送导航控制器’”
这是我的应用程序流程登录屏幕-> 选项卡应用程序 Tab1。显示详细信息选项卡 2。查看工单(TicketMasterViewController)->工单详情(TicketDetailViewController)。
我是否需要初始化 AppDelegate 中的所有控制器以及 TicketMasterViewController 的 objectAtIndex 应该是什么。谢谢你的时间。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
NavigationViewController *vc4=[[NavigationViewController alloc]init];
UINavigationController *navigationController=[[UINavigationController alloc]initWithRootViewController:vc4];
TicketMasterViewController *firstViewController=(TicketMasterViewController *)[[navigationController viewControllers] objectAtIndex:0];
TicketDataController *aDataController=[[TicketDataController alloc] init];
firstViewController.dataController=aDataController;
// Override point for customization after application launch.
return YES;
}