我正在使用Swift 4在XCode 10中开发一个应用程序。我已经通过以下方式在iPhone的情节提要中设置了视图(wC,hR):
滚动视图(顶部:超级视图,底部:超级视图,尾部:安全区域,前导:安全区域)
滚动视图内部是一个容器视图:T,B,L,R代表超级视图,宽度等于基本视图(即屏幕)
在容器视图中有几个标签和图像视图。
我对此设置没有问题。
问题是当我对iPad(wR,hR)进行调整时。在这里,我禁用了尾随和前导约束,而是添加了690的宽度约束,并已水平对齐以进行超级视图。当我这样做时,我收到一个约束错误,提示“可滚动内容宽度模糊”。
我相信问题是我正在相对于作为滚动视图的超级视图进行水平对齐,因此没有对基本视图的引用,但是我不确定如何对其进行调整以使其起作用。 / p>
答案 0 :(得分:0)
尽管意义不大,但是如果您还向Container View
添加了水平和垂直居中对齐限制(关于其superview
,Scroll View
,这可能会有所帮助)
这是根据this answer以及我自己与AL的斗争得出的。
答案 1 :(得分:0)
我认为您需要使用两个“容器”视图。
对于iPhone(wC,hR):
ContainerView子视图上的约束将控制ContainerView的高度,这将控制SuperContainerView的高度,这将控制滚动。
对于iPad(wR,hR):
结果...绿色是ContainerView,蓝色是SuperContainerView(滚动视图在每侧的插图8中):
如果要在旋转为横向的手机上运行时最大宽度为690,则需要对wC,hC进行类似的约束修改