我试着在我的项目中不断地使用自动布局,但我无法理解它。
这里我有一个带有两个子视图的UIView:

我希望它在retina 4 inch中保持这样,但我想将view.frame.origin.y 40或60分移到3.5 inch屏幕上。有什么方法可以用标准的自动布局约束来完成吗?
显然,在这里,不使用自动收费不是一种选择。
我试着设置不同的约束,但它们似乎没有给我对框架的y值的完全控制。
发布于 2014-07-17 23:26:58
我相信你需要使用topLayoutGuide。请查看苹果的技术问答QA1797“阻止状态栏覆盖你的观点”,希望这正是您所需要的。
更新
很抱歉没有仔细阅读你的问题。我认为如果没有运行时计算,就不可能通过任意值对视图进行y坐标的移动。但是,您可以通过组合viewDidLoad方法中的2个约束和修改约束值来实现您所需要的:
bottomLayoutGuide并设置垂直间距约束。这给你88个像素移动3.5“屏幕相比,4”屏幕。在viewDidLoad中,您可以检测设备是否有3.5“屏幕,并将第一个约束值增加20/40/60。
这不是一个优雅的解决方案,但希望它能有所帮助。
https://stackoverflow.com/questions/24814817
复制相似问题