2011-01-22 220 views
2

我创建了一个自定义视图,并添加了一个Web视图作为该自定义视图的子视图。我以编程方式创建了一个导航栏。现在我想在该视图中创建一个左或右导航栏按钮。如何在iPhone中的自定义导航栏中创建导航栏项目?

navigBar = [[UINavigationBar alloc] initWithFrame:CGRectMake(0, 0, 320, 44)]; 

navigBar.tintColor = [UIColor blackColor]; 

[self.view addSubview:navigBar]; 

UIBarButtonItem *homeButton = [[UIBarButtonItem alloc] initWithTitle:@"Home" style:UIBarButtonSystemItemAction target:self action:@selector(homeButtonAction)]; 

navigBar.rightBarButtonItem = homeButton; // it's not supports 

如何在自定义导航栏中创建导航栏项目?,我想要删除自定义视图。所以请帮助我!

谢谢。

回答

18

在您的导航栏的参考,你可以调用两种方法:

- (void)pushNavigationItem:(UINavigationItem *)item animated:(BOOL)animated 
- (UINavigationItem *)popNavigationItemAnimated:(BOOL)animated 

在您的自定义视图控制器类写是这样的:

self.navigationItem.leftBarButtonItem = yourButton; 
self.navigationItem.rightBarButtonItem = yourSecondButton; 

所以你可以写这样的东西:

[myNavBarReference pushNavigationItem:self.navigationItem animated:NO]; 
0

rightBarButton定义为UINavigationItem。请参阅文档UINavigationItemUINavigationBar(特别是将内容添加到导航栏)。

使用的方法是- (void)pushNavigationItem:(UINavigationItem *)item animated:(BOOL)animated