Iphone 什么';我使用UINavigationController有什么问题吗?
我想在我的应用程序中使用Iphone 什么';我使用UINavigationController有什么问题吗?,iphone,ios,uinavigationcontroller,Iphone,Ios,Uinavigationcontroller,我想在我的应用程序中使用UINavigationController,我的用法如下: 1) 在我的root视图的.h文件中,我声明了一个导航控制器: UINavigationController *navController; 2) 在我的根视图的.m文件中,我通过(在viewDidLoad中)初始化navController: 3) 在我的root视图的.m文件中,我添加了一个处理程序来处理按钮单击事件,并在事件处理程序中尝试通过以下方式呈现另一个视图: WBSDKTimelineViewC
UINavigationController
,我的用法如下:
1) 在我的root视图
的.h文件中,我声明了一个导航控制器
:
UINavigationController *navController;
2) 在我的根视图的.m文件中,我通过(在viewDidLoad
中)初始化navController
:
3) 在我的root视图
的.m文件中,我添加了一个处理程序来处理按钮单击事件,并在事件处理程序中尝试通过以下方式呈现另一个视图:
WBSDKTimelineViewController *controller = [[WBSDKTimelineViewController alloc] initWithAppKey:kWBSDKDemoAppKey appSecret:kWBSDKDemoAppSecret];
[navController pushViewController:controller animated:YES];
之后,
视图
没有出现在屏幕上,什么也没有发生,我确信我的代码已经执行,我的用法有什么问题?谢谢。您需要在AppDelegate.m中定义UINavigationController,如下所示
MasterViewController *masterViewController = [[MasterViewController alloc] initWithNibName:@"MasterViewController" bundle:nil];
self.navigationController = [[UINavigationController alloc] initWithRootViewController:masterViewController];
self.window.rootViewController = self.navigationController;
root用户的视图控制器应该已经包装在
UINavigationController
中。然后,UIViewController
有一个属性navigationController
来访问此UINavigationController
,并将其他视图控制器推/弹出到堆栈中
MasterViewController *masterViewController = [[MasterViewController alloc] initWithNibName:@"MasterViewController" bundle:nil];
self.navigationController = [[UINavigationController alloc] initWithRootViewController:masterViewController];
self.window.rootViewController = self.navigationController;