添加按钮到ui导航控制器底栏

use*_*963 5 iphone

我可以使用以下代码取消隐藏导航控制器底栏

[self.navigationController setToolbarHidden:NO];
Run Code Online (Sandbox Code Playgroud)

但现在我想改变底栏的颜色,并在底栏上添加按钮.任何人都可以帮助我如何做到这一点是否有任何委托方法?

小智 14

在导航控制器中显示的每个视图控制器的viewDidLoad方法中,添加如下代码:

//set up the toolbar
[self.navigationController setToolbarHidden:NO];
[self.navigationController.toolbar setBarStyle:UIBarStyleBlackOpaque];  //for example

//set the toolbar buttons
 [self setToolbarItems:[NSArray arrayWithObjects:button1, button2, nil]];  
Run Code Online (Sandbox Code Playgroud)

在这种情况下,button1和button2是视图控制器的IBOutlet属性,实际按钮在IB内定义为UIBarButtonItem(但不是IB中视图层次结构的一部分).

或者,您可以使用代码创建按钮 - 如下所示:

UIBarButtonItem* button1 = [[[UIBarButtonItem alloc] initWithTitle:@"Button Text" style:UIBarButtonItemStyleBordered target:self action:@selector(myAction)] autorelease];
Run Code Online (Sandbox Code Playgroud)