[英]Xcode constraints?
我正在尝试了解和使用Xcode的约束功能。 我可以看到如果有几个视图,它真的很有用,因为您可以指定每个视图如何对齐。
但是,如果您有很多视图,这将成为一项繁琐的任务,尤其是当您开始以编程方式将它们弄乱(例如移动它们)时。 例如下图:
当我扩大和缩小屏幕时,我希望它看起来像这样,但是,事实并非如此。 而且,由于它们一直在相互靠近,因此如果我以编程方式移动一个(例如我正在制作游戏),则另一个会无意间随之移动。
因此,基本上,当在屏幕上显示大量视图对象并在代码中移动它们时,我应该如何处理约束? 任何提示,不胜感激! (是的,我尝试一次为每个单个视图添加/删除约束,首先,这是一个繁琐的任务,其次,它不断为视图添加约束以使它们彼此对齐,而您很少想要在移动它们的游戏中)。
提前谢谢!
您可以尝试更新约束,而不是一直删除和添加约束。 您可以为需要更改的所有约束创建IBOutlets
,然后可以通过更改constant
量值来更新它们
[self.heightConstraint setConstant:newValue];
然后,您可能需要在动画块中调用[self layoutIfNeeded]
,以在更新约束后查看更改:
[UIView animateWithDuration:0.5 animations:^{
[self layoutIfNeeded];
}];
我并不真正了解您的应用程序的细节,但是也许如果您从视图之间如何关联的角度考虑约束,那么移动它们就不会那么困难。
另一个想法是将视图归为一个UIView
子类。 也许像RowView
这样的东西具有3张图像并处理这些图像的约束。
我的意思是像“分而治之”之类的东西,不是在一个视图中处理所有约束,而是以对您的应用程序有意义的方式将它们组合在一起。
希望这可以帮助! 祝您项目顺利。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.