gpt4 book ai didi

ios - IBDesignables 的某种 "global"?

转载 作者:可可西里 更新时间:2023-11-01 03:29:24 25 4
gpt4 key购买 nike

在 Storyboard 中有一个 UIView,带有例如“0.1”比例高度的约束。

假设您对许多不同场景中的 View 有类似的约束“0.1”。

假设您要将值 0.1 更改为 0.975。

你必须在任何地方单独更改它。

有没有什么方法可以使用@IBInspectable 和/或约束来生成某种“全局值”

这样您就可以一次更改所有内容,并在 Storyboard 中同时查看所有结果。

(当然,在运行时您可以在代码中传播这些。但最好在 Storyboard上看到它。)


请注意,例如,Wain 的以下解决方案非常有效:您可以设置一次值,并影响应用程序中的所有位置。但不幸的是,它只在运行时执行此操作,您不会在 Storyboard上看到它。

最佳答案

我还没有尝试过,这只是在这里输入的,请原谅打字错误,但我会考虑在 NSLayoutConstraint 上创建一个扩展,类似于:

let constants = [
"bannerHeight" : CGFloat(50)
]

extension NSLayoutConstraint {
func setCommonConstant(name: String) {
self.constant = constants[name]!
}
}

然后在 Xcode 中使用用户定义的运行时属性,因此指定要使用的名称:

commonConstant, type String, value name

所以,像这样,在 Storyboard 中任何地方的每个约束上:

enter image description here

关于ios - IBDesignables 的某种 "global"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38000191/

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