从按钮加载导航控制器

时间:2010-01-04 10:09:09

标签: iphone uinavigationcontroller

我有一个带按钮的视图。我想按下按钮,然后会出现一个导航控制器,其中会有一个后退按钮,可以将我带到原始视图。

这是我加载导航控制器的方式:

-(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:)];
}

2 个答案:

答案 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];

这是导航不同视图的最简单方法。