2015-11-17 151 views
7

我正在修改一个应用程序,这个应用程序在其导航栏中有一些按钮,我想通过拖动它到层次结构添加另一个按钮或栏按钮项目,但它似乎我不能添加它作为一个导航栏的孩子,我想问你是否有任何解决方案,这里是故事板层次结构的快照,我想添加另一个栏按钮项或另一个按钮到导航项。
谢谢
enter image description here添加另一个按钮导航栏

+1

没有图片,请上传图片。 –

+0

非常感谢,我附上它 – m0j1

回答

15

所以我刚刚创建一个空白的项目,我可以这样做:

enter image description here

我之前,我实际使用一个UIButton而也做这样的东西比酒吧按钮项目获得一些额外的可定制性。只要确保您设置的电源插座上的按钮,在视图控制器调用self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:self.customButton];

enter image description here

你可以有多个右栏按钮的项目,如果它们重叠标题(如果有的话),那么他们基本上被裁剪。根据我的理解,在空间消失之前,您可以拥有尽可能多的按钮(显然,这取决于设备可能会有所不同)。相关文档:

此数组可以包含0个或更多个栏按钮项目,以显示在 导航栏的右侧。项目以与数组中显示的顺序相同的顺序从右到左显示。因此,数组中的第一个项目是最右边的项目,其他项目将添加到前一个项目的左侧。

如果没有足够的空间显示数组中的所有项目,那些与标题视图(如果存在)重叠的项目或条形左侧的按钮不是 会显示。

有很多按钮的例子:

enter image description here

编程方式,你可以使用添加按钮:

navigationItem.rightBarButtonItems = [aButton, anotherButton, awesomeButton]

只要确保你测试你目标将最小的设备如果添加大量按钮,仍然可以为用户提供良好的用户体验。

+0

哇,感谢的人GIFs是惊人的。可以有超过3件物品吗?因为我正在处理的项目已经有2个按钮和一个图像,我想要做的是添加第三个按钮。谢谢agin – m0j1

+0

@ m0j1你当然可以有第三个右键项目。我已经用更多细节更新了我的答案。 – Gordonium

5

这里是迅速正确答案:

let barButton_array: [UIBarButtonItem] = [Button1, Button2] 
navigationItem.setRightBarButtonItems(barButton_array, animated: false)