@UseAutoLayout

启用应用视图自动布局的属性包装器。

声明

@UseAutoLayout 属性包装器

@propertyWrapper
public struct UseAutoLayout<T: UIView> {
    public var wrappedValue: T {
        didSet {
            setAutoLayout()
        }
    }

    public init(wrappedValue: T) {
        self.wrappedValue = wrappedValue
        setAutoLayout()
    }

    func setAutoLayout() {
        wrappedValue.translatesAutoresizingMaskIntoConstraints = false
    }
}

用法

@UseAutoLayout var label = UILabel()

安装

属性包装器在 Swift 5.1 中定义。 使用 @UseAutoLayout 需要 Xcode 11.0 (及以上版本) 和 Swift 5.1 工具链

Swift Package Manager

.package(url: "https://github.com/bielikb/UseAutoLayout.git", from: "1.0.0") 添加到你的 Package.swift 文件的 dependencies 中。

如果你使用 Xcode 11.0,请使用 Xcode 将此 Swift Package 添加到你的目标(targets)中。

示例

Sample