Fat*_*tie 7 ios uistoryboard nslayoutconstraint ibinspectable
在故事板中有一个UIView,具有约束例如"0.1"比例高度.
想象一下,对于许多不同场景中的视图,您有类似的约束"0.1".
假设您要将值更改为0.1到0.975.
你必须在任何地方单独改变它.
有没有办法使用@IBInspectable和/或约束来形成一种"全局价值"?
这样您就可以立即更改所有内容,并在故事板中同时查看结果.
(当然,在运行时你可以在代码中传播它们.但最好在故事板上看到它.)
请注意,Wain的解决方案可以完美地运行:您可以设置一次值,并影响应用程序中的任何位置.但不幸的是,它只在运行时才这样做,你没有在故事板上看到它.
我还没有尝试过,这只是在这里输入的,所以请原谅拼写错误,但我会考虑在 上创建一个扩展NSLayoutConstraint,大致如下:
let constants = [
"bannerHeight" : CGFloat(50)
]
extension NSLayoutConstraint {
func setCommonConstant(name: String) {
self.constant = constants[name]!
}
}
Run Code Online (Sandbox Code Playgroud)
然后在 Xcode 中使用用户定义的运行时属性,指定要使用的名称:
commonConstant, type String, value name
Run Code Online (Sandbox Code Playgroud)
因此,像这样,在故事板中任意位置的每个约束上:
| 归档时间: |
|
| 查看次数: |
644 次 |
| 最近记录: |