gpt4 book ai didi

ios - 避免在任何地方都使用 setTranslatesAutoresizingMaskIntoConstraints(false)

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:51:02 24 4
gpt4 key购买 nike

我想知道,现在有了自动布局,您必须告诉每个 UIView 您不想将其(已弃用)自动调整大小掩码转换为布局约束,如下所示:

let view = MyView()
view.setTranslatesAutoresizingMaskIntoConstraints(false)

在我的应用程序中,我(几乎)所有 View 都带有自定义约束,因此我从不想自动转换自动调整大小的蒙版。如果默认设置为 false 不是很好吗?所以只有在我确实想要翻译自动调整大小蒙版的情况下,我才将其设置为 true

有没有办法让 false 成为 setTranslatesAutoresizingMaskIntoConstraints 的默认值?也许有某种巧妙的扩展(又名类别)?

最佳答案

我完全同意这就是我制作 this category 的原因其中包括这样一个初始化程序:

extension UIView {

// MARK: Initializing a View Object

/**
* @name Initializing a View Object
*/

/**
* Returns a frameless view that does not automatically use autoresizing (for use in autolayouts).
*
* @return A frameless view that does not automatically use autoresizing (for use in autolayouts).
*/
class func autoLayoutView() -> Self {
let view = self()
view.setTranslatesAutoresizingMaskIntoConstraints(false)
return view
}
}

项目中也有一个 swift 分支,但这是非常早期的阶段。欢迎拉取请求!

关于ios - 避免在任何地方都使用 setTranslatesAutoresizingMaskIntoConstraints(false),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27667994/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com