ios - 如何在 Swift 中以编程方式创建约束?

标签 ios swift constraints

我正在尝试使用以下代码设置 UIButton 的宽度:

constraintButtonPlayWidth = NSLayoutConstraint(item: buttonPlay,
        attribute: NSLayoutAttribute.Width,
        relatedBy: NSLayoutRelation.Equal,
        toItem: self.view,
        attribute: NSLayoutAttribute.Width,
        multiplier: 1,
        constant: 100)
self.view.addConstraint(constraintButtonPlayWidth)

但是按钮被拉得太长了;可能是因为 toItem: self.view。我尝试修改约束的常量,但这并没有改变任何东西。

如何正确设置此约束,使其实际宽度为 100?

最佳答案

你很接近。约束应该只有一个项目,因为它与另一个项目无关。

constraintButtonPlayWidth = NSLayoutConstraint (item: buttonPlay,
    attribute: NSLayoutAttribute.Width,
    relatedBy: NSLayoutRelation.Equal,
    toItem: nil,
    attribute: NSLayoutAttribute.NotAnAttribute,
    multiplier: 1,
    constant: 100)
self.view.addConstraint(constraintButtonPlayWidth)

关于ios - 如何在 Swift 中以编程方式创建约束?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28252583/

相关文章:

sql-server - 如何创建基于 2 列的 SQL 唯一约束?

ios - 在 UICollectionViewCell 上设置约束的问题

ios - 使用 DKImagePickerController 在 ScrollView 上显示多个图像

ios - 代表另一家公司在 Apple App Store 中发布应用程序

objective-c - 从模态视图启动相机会导致 iPad 上出现不需要的调整大小

ios - 如何在 IOS/SWIFT/OBJ-C/CORDOVa 上获取 Finger iD(哪个手指用于触摸 ID)或唯一触摸 ID

swift - Swift 3 中与 Cocoa 的线程间对象通信

ios - 基于 customObject 属性订购 Collection View 单元格 - Swift 4 -Xcode 9

ios - Swift 结构体返回成员

postgresql - Postgresql 约束一个字符类型