【发布时间】:2016-01-15 15:59:45
【问题描述】:
这看起来应该比现在更容易。
我试图在任何 iOS 设备中以 1:1(正方形)的纵横比将 UIView 居中,无论方向如何。
详情: 我的视图有一个在 timeInterval 上更新的平局。我使用全屏视图并在每次绘制时计算我的正方形。在方向改变时,整个视图都变成了地狱。我假设如果视图是方形的,我可以相信方向改变动画。
我的约束反复失败,这就是为什么这看起来应该更容易:
View (Square)
Constraints
aspect 1:1
Constraints
View.centerX = centerX
View.centerY = centerY
View.leading ≥ leadingMargin + 5 @ 800
View.top ≥ Top Layout Guide.bottom + 5 @ 800
trailingMargin ≥ View.trailing + 5 @ 800
Bottom Layout Guide.top ≥ View.bottom + 5 @ 800
我的内容拥抱优先级为 250
我的内容抗压性为 750
这会留下约束错误:
- 缺少约束:需要约束:X 位置或宽度
- 缺少约束:需要约束:Y 位置或高度
我的困惑是我无法锁定一个维度,因为在旋转时我需要锁定另一个维度。
如前所述...这似乎应该更容易。
将边框为 5 的 Square UIView 居中在较细的尺寸上。
(纵向 5 到侧面,横向 5 到顶部和底部)
非常感谢您的建议,解释将无济于事。
【问题讨论】:
-
您希望正方形在仍然是正方形的同时具有最大可用尺寸吗?然后居中?
-
您是否有可行的解决方案并正在寻找更简单的版本,或者您是否需要任何可行的解决方案?
-
我的解决方案不起作用,因为当我旋转时视图消失并且 IB 抱怨缺少约束
-
好的,我正在试验一个仅限 IB 的解决方案,这可能是您最想要的!?这绝对不是一件小事
-
我发现不乏琐碎。
标签: ios autolayout interface-builder constraints ios9