我可以在Swift中更改简单的NSLayoutConstraint,它们是在故事板中设置的.例如,这是我的故事板中的宽度约束
<constraint firstAttribute="width" constant="600" id="EGo-Al-B35"/>
Run Code Online (Sandbox Code Playgroud)
这是我在Swift中改变它的方式(我在UIViewController的子类的viewDidLoad覆盖中这样做):
let newVaue:CGFloat = CGFloat(414) // Actually some working out here
self.constraintOutlet.constant = newVaue
self.constraintOutlet.setNeedsUpdateConstraints()
Run Code Online (Sandbox Code Playgroud)
但并非我想要更新的所有约束都那么简单.特别是一些使用自动布局的大小类来提供横向约束的修订值.以下是我的故事板中的示例
<constraint firstItem="kcH-BX-CS6" firstAttribute="top" secondItem="nvV-Xd-fnh" secondAttribute="bottom" id="I6B-Lp-edd">
<variation key="heightClass=compact" constant="250"/>
</constraint>
Run Code Online (Sandbox Code Playgroud)
如何从Swift代码中更改变量的常量?
| 归档时间: |
|
| 查看次数: |
549 次 |
| 最近记录: |