self.navigationController pushViewController无法正常工作
我有一个带有单个UIViewController
的View应用程序。 然后我通过IB添加一个UITableViewController
,我试图通过UIViewController
(我的主视图)中的按钮按UIViewController
显示UITableViewController
。 我按下按钮(IBAction)包含以下代码,我试图通过它来推送我的UITableViewController
视图并显示它:
DataViewController *dataController = [[DataViewController alloc] initWithNibName: @"DataViewController" bundle:nil]; [self.navigationController pushViewController:dataController animated:YES]; [dataController release];
我的DataViewController
根本没有被推入堆栈并显示,我也检查过上面的代码, self.navigationController=nil
可能这是问题的根源。 如果是这样,如何纠正呢?
请帮忙。
您需要实际创建一个UINavigationController
。 navigationController
属性告诉您DataViewController当前是否在UINavigationController
的层次结构中; 如果不是(如本例所示),则navigationController
属性返回nil
。
UINavigationController *navCtrlr = [[UINavigationController alloc]initWithRootViewController:yourfirstviewController]; [self.window setRootViewController:navCtrlr]; navCtrlr.delegate = self; navCtrlr.navigationBarHidden = YES;
在appdelegate.m
创建导航控制器,然后您可以导航到任何uiviewcontroller