向UIBarButtonItem添加约束

时间:2015-10-19 09:43:36

标签: xcode swift autolayout uinavigationbar uibarbuttonitem

Xcode不允许我在MainStoryBoard中的ViewController上对BarButtonItem施加约束。它出现在左侧太远的地方,如图所示,它不可读。

下图显示了BarButtonItem的位置。它应该说" Item"。我也查看了Xcode上的预览分屏,它看起来很适合iPhone6,但不适用于iPhone 4(它在iPhone 4上切了一半,但这里是3 / 4s切割)。我在这里为iPhone 6跑步而且我得到了。

如何在Xcode中添加约束或如何以编程方式将约束添加到此BarButtonItem?

enter image description here

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:4)

在xib / storyboard中拖放导航栏

enter image description here

您可以根据需要为此导航栏添加约束。

然后将条形按钮项添加到导航栏

enter image description here

条形按钮项目采用默认位置u不能在那里包含自动布局。

虽然如果您想要固定或灵活的条形按钮项目的位置,您可以使用固定空格键按钮项目或灵活空格键按钮项目。

enter image description here

如果位置已固定,请在两个条形按钮项目之间拖动固定空格键按钮。 如果位置没有固定,则可以在两个Bar Button项目之间灵活拖动灵活空格键按钮项。

快乐编码.. :)

答案 1 :(得分:-2)

试试这个:

let rightConstraint = NSLayoutConstraint(item: your_item_here, attribute: .Right, relatedBy: .Equal, toItem: your_item_here, attribute: .Left, multiplier: 0, constant: 1)
your_item_here.addConstraint(rightConstraint)

P.S 如果你想为你的UIBarButtonItem添加约束,它会出现错误

Value of type 'UIBarButtonItem' has no member 'addConstraint'

<强> P.S.S

由于它不是视图类,因此您无法对其应用约束。