swift - 如何在 Storyboard中对齐两个 uibutton

标签 swift button uibutton swift2

如何制作两个按钮“喜欢”和“评论”,“喜欢”左侧的间距相等,“喜欢”和“评论”中间的间距相等,“评论”右侧的间距相等“取决于手机尺寸

这是一个图像示例:

enter image description here

最佳答案

尝试以下代码,它的方法有点不同,但希望它对您有用。最好直接在 Storyboard 中设置这些约束。

let deviceWidth = UIScreen.mainScreen().bounds.size.width
let buttonWidth = 75
let equalPadding = (deviceWidth - (2 * buttonWidth))/3
let centerXOfLikeButton = -(buttonWidth/2 + equalPadding/2)
let centerXOfCommentButton = (buttonWidth/2 + equalPadding/2)

// Like button constraints
let likeBtnTopConstraint = NSLayoutConstraint(item: button, attribute: NSLayoutAttribute.Top, relatedBy: .Equal, toItem: self.view, attribute: NSLayoutAttribute.Top, multiplier: 1.0, constant: 20)    
let likeBtnWidthConstraint = NSLayoutConstraint(item: button, attribute: NSLayoutAttribute.Width, relatedBy: .Equal, toItem:  nil, attribute: NSLayoutAttribute.NotAnAttribute, multiplier: 1.0, constant: buttonWidth)    
let likeBtnHeightConstraint = NSLayoutConstraint(item: button, attribute: NSLayoutAttribute.Height, relatedBy: .Equal, toItem:  nil, attribute: NSLayoutAttribute.NotAnAttribute, multiplier: 1.0, constant: 40)    
let likeBtnXConstraint = NSLayoutConstraint(item: button, attribute: .CenterX, relatedBy: .Equal, toItem: self.view, attribute:  .CenterX, multiplier: 1, constant: centerXOfLikeButton)

self.view.addConstraint(likeBtnTopConstraint)
self.view.addConstraint(likeBtnWidthConstraint)
self.view.addConstraint(likeBtnHeightConstraint)
self.view.addConstraint(likeBtnXConstraint)

// Comment button constraints
let commentBtnTopConstraint = NSLayoutConstraint(item: button, attribute: NSLayoutAttribute.Top, relatedBy: .Equal, toItem: self.view, attribute: NSLayoutAttribute.Top, multiplier: 1.0, constant: 20)    
let commentBtnWidthConstraint = NSLayoutConstraint(item: button, attribute: NSLayoutAttribute.Width, relatedBy: .Equal, toItem:  nil, attribute: NSLayoutAttribute.NotAnAttribute, multiplier: 1.0, constant: buttonWidth)    
let commentBtnHeightConstraint = NSLayoutConstraint(item: button, attribute: NSLayoutAttribute.Height, relatedBy: .Equal,  toItem: nil, attribute: NSLayoutAttribute.NotAnAttribute, multiplier: 1.0, constant: 40)    
let commentBtnXConstraint = NSLayoutConstraint(item: button, attribute: .CenterX, relatedBy: .Equal, toItem: self.view,  attribute: .CenterX, multiplier: 1, constant: centerXOfCommentButton)

self.view.addConstraint(commentBtnTopConstraint)
self.view.addConstraint(commentBtnWidthConstraint)
self.view.addConstraint(commentBtnHeightConstraint)
self.view.addConstraint(commentBtnXConstraint)

使用 Storyboard,请引用下面提供的屏幕截图 enter image description here

enter image description here

enter image description here

enter image description here

enter image description here

关于swift - 如何在 Storyboard中对齐两个 uibutton,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37770832/

相关文章:

ios - Xcode 9 Swift 语言版本 (SWIFT_VERSION)

java - 如何以编程方式将按钮添加到自定义 View ?

javascript - JS document.getElementById 在按钮点击时执行

ios - 从 UIbutton 读取数字

swift - 如何在 NSMenu 中放置水平 slider (Swift 3、Xcode 8)

ios - swift tableview 重新加载数据问题 - 自定义单元格中缺少元素

ios - Swift:如何以编程方式禁用 MapKit 注释的信息按钮

javascript - 如何获得与 Youtube 相同的按钮?

ios - 使用 UITapGestureRecognizer 更改标签颜色

iphone - 通过 UIButton 将文本从 UITextView 复制到剪贴板(粘贴板)?