我有一个带按钮的视图。我想按下按钮,然后会出现一个导航控制器,其中会有一个后退按钮,可以将我带到原始视图。
这是我加载导航控制器的方式:
-(IBAction) viewButtonPressed:(id) sender
{
[self.view addSubview:navController.view];
[self.view bringSubviewToFront:navController.view];
}
在NAvagtion控制器的rootController中我尝试了这个,但它不起作用(后退按钮甚至没有出现):
@implementation rootViewController
- (void)viewDidLoad {
self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemEdit target:self action:@selector(customGoBack:)];
}
答案 0 :(得分:1)
navigationController是viewControllers的堆栈。您没有将除root之外的任何控制器推送到此堆栈,因此navigationBar中没有后退按钮。您可以创建单独的控制器将其推入navigationController的堆栈。如果您不想在第一个控制器的视图中看到navigationBar,只需将- (void)setNavigationBarHidden:YES animated:NO
发送到您的UINavigationController实例。
答案 1 :(得分:0)
使用此代码,
YourViewController * yvController = [[YourViewController alloc] initWithNibName:@“YourViewController”包:[NSBundle mainBundle]];
[self.navigationController pushViewController:yvController animated:NO];
这是导航不同视图的最简单方法。