在Storyboard中将多个UIBarButtonItem添加到UINavigationItem?

时间:2012-06-01 18:39:42

标签: iphone ipad ios5

enter image description here

您可以轻松添加单个UIBarButton项目,如我在Storyboard中所见。但我想添加几个,似乎我不能使用故事板?

这很烦人,因为那时我失去了故事板的全部概述,而且它是Segue的。

是这样的吗?第一个项目使用故事板,所以我想我可能会遗漏一些东西。

3 个答案:

答案 0 :(得分:51)

在XCode 4.6(至少)中,您可以将普通视图拖动到导航栏上(在您想要多个按钮的任何一侧),然后在其上方拖动工具栏。完成后,您可以在工具栏上放置多个条形按钮项,并将它们连接到动作/ segue等,正常情况下。确保您将视图和工具栏都设置为默认(透明)背景颜色。

答案 1 :(得分:3)

在Xcode 7中,您最终可以直接在Interface Builder中将多个UIBarButtonItem拖到UINavigationItem中。

参见WWDC 2015 Session 407视频标题:

  

在Interface Builder中实现UI设计

https://developer.apple.com/videos/wwdc/2015/?id=407

答案 2 :(得分:-1)

试试这个

    -(void)viewDidLoad
{

    [super viewDidLoad];

    UIBarButtonItem *editBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemEdit target:self action:@selector(editAction)];

    UIBarButtonItem *saveBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemSave target:self action:@selector(saveAction)];

    self.navigationItem.rightBarButtonItems = [[NSArray alloc] initWithObjects:editBarButtonItem, saveBarButtonItem, nil];   
} 

我们还需要实现editAction和saveAction方法。

-(void)editAction
{

    NSLog(@"edit button clicked");
}

-(void)saveAction
{

    NSLog(@"save button clicked");
}