【发布时间】:2017-07-24 06:49:42
【问题描述】:
基本上我有一个高度为 x 的视图 和其他 4 个具有相同高度 y 的视图,所有这 5 个视图都是垂直的,具有 10 px 的空间
所有这些视图又有一些依赖于它们的子视图。
对于这种情况,stackview 是理想的,但它支持从 iOS 9 开始,不幸的是我必须从 iOS 6 开始支持
所以基本上我用前导、尾随、顶部、底部和高度约束修复了所有视图...
它在 iPhone 7s 中运行良好 ...但在 iphone 4s 中,视图彼此重叠
在 iphone se 中,视图非常拥挤..
我一直认为高度会根据 iPHone 4s 的屏幕尺寸而变化,但那没有发生
我怎样才能解决这个问题?
【问题讨论】:
-
如果你配置了固定高度,为什么你会认为高度会改变?我意识到这可能是你无法控制的,但 ios9+ 是 95% 的设备;我认为运行
-
@Paulw11 - 但根据项目规范,我必须支持:(
-
如果我删除高度约束,我可以在没有任何 UI 问题的情况下实现。如果你被赋予这样做,你会使用什么约束......你能逐步解释我吗
-
如果您不能使用堆栈布局,那么您将需要使用纵横比约束来设置您的第一个项目相对于屏幕高度的高度,然后在当屏幕高度已知时,其他项目和第一项或在运行时修改您的约束
-
@Paulw11 - 如何使用纵横比约束来设置第一个项目相对于屏幕高度的高度?如果你能用截图解释一下,我真的很感激你
标签: ios autolayout constraints aspect-ratio autoresizingmask