首页 > 解决方案 > 添加约束时将 translatesAutoresizingMaskIntoConstraints 设为 false

问题描述

我以编程方式制作视图,当我想将自动布局添加到视图时,translatesAutoresizingMaskIntoConstraints每次都设置 false 是很痛苦的。现在我正在寻找使生活更轻松的任何解决方案。每次我想添加约束时,是否有任何扩展或类使其禁用?

谢谢。

标签: iosswiftautolayoutswift4

解决方案


我认为您可以translatesAutoresizingMaskIntoConstraints在视图子类中添加该行。例如,您通常使用UITextField,或者说UIView,确定您有这样的基类,如下所示:

import UIKit

/// Another Customized/Subclassed UIButton.
class BaseButton: UIButton {

    /// override init
    override init(frame: CGRect) {
        super.init(frame: frame)

            self.translatesAutoresizingMaskIntoConstraints = false
       }
    }

    /// override coder
    required init?(coder aDecoder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
}

或者更好,我可以建议,下面这个?我将 SnapKit 用于我所有的生产级项目。

https://github.com/SnapKit/SnapKit

我希望这有帮助!


推荐阅读