民间, iPhone开发新手,所以我非常感谢您的帮助。我一直在寻找文档和尝试很多东西,以使我的导航控制器功能工作,但不能。
这是情况。我有一个app委托,它将根控制器设置为导航控制器:
- (BOOL)application:(UIApplication *)applicationdidFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window.rootViewController = self.mainViewController.navController;
[self.window makeKeyAndVisible];
return YES;
}
导航控制器是mainviewcontroller的一个属性,因为我打算只在用户选择mainviewcontroller拥有的tableview中的项目时才将用户带到地图视图(与mapviewcontroller相关联)。我还想不出一种优雅的方式来通知appdelegate关于表行选择,因此我试图在mainviewcontroller中处理它。
在mainviewcontroller init函数中:
- (id)initWithCoder:(NSCoder *)aDecoder
{
self = [super initWithCoder:aDecoder];
if (self) {
// Custom initialization
navController = [[UINavigationController alloc] initWithRootViewController:self];
mapController = [[MapViewController alloc] init];
}
return self;
}
在主视图控制器中,当用户从tableview中选择一个项目时,我会调用:
[self.navController pushViewController:mapController animated:YES];
与我的mapviewcontroller相关联的视图永远不会出现。有什么想法正在发生什么?
由于
答案 0 :(得分:0)
添加此
[self.window addSubview:self.mainViewController.navController.view];
之前
[self.window makeKeyAndVisible];