我正在使用Xcode 8.3.2和Swift 3
使用滚动视图创建了一个故事板,该视图对superview的边距为零
滚动视图的边距如下:
Top, trailing, bottom and leading space to superview as 0
滚动视图有一个子节点,一个带有以下边距的容器视图:
Trailing, leading, bottom and top to superview at 0
Align center Y and align Center X in Superview
Intrinsic size to placeholder with height unchecked
XCode建议放入对齐中心X和Y
在容器视图中,我想有两个UI视图。我希望蓝色UI视图的高度始终为236.红色视图我希望最小高度为400,如果有更多空间可以增长
蓝色视图的约束是:
Height = 227
Trailing, leading, bottom to superview at 0
Top to red view as 0
红色视图的约束是:
Height >= 400
Trailing, leading, top to superview at 0
Bottom to blue view as 0
当我翻动手机时,红色视图缩小,蓝色视图保持在227.
滚动视图似乎无法识别容器大于屏幕大小。
什么可能导致滚动视图无法识别容器视图是否大于屏幕?
屏幕以横向模式旋转的模拟器;红色视图太小,即使高度为> = 400.没有滚动
答案 0 :(得分:1)
<强>意见:强>
它似乎应该正常工作。在横向模式下,屏幕高度较低。根据您的限制,您希望第一个视图的高度为227,第二个视图的高度至少为400.这意味着可能的最小高度加起来为627. iPhone 5,在景观中模式,没有那么高的高度。所以iOS打破了一些限制,尽可能地布局屏幕(你可能也会在控制台中看到这个日志)。
<强>建议:强>
相应地更改contentSize
的{{1}}以适应约束的实现。