2016-07-26 61 views
0

我使用的Xcode 7和斯威夫特2页UIScrollView的内容推离

目前,我有我的应用程序场景的结构如下:
场景 - >查看 - >堆栈视图

问题是因为我已经用完了空间,所以我想把堆栈视图放到一个滚动视图中。但是,当我这样做时,内容会被横向推出页面。我不知道为什么没有滚动视图一切都适合在屏幕上齐平。我没有添加任何额外的限制。

任何想法?

+0

您是否向滚动视图添加布局约束? – danh

+0

嗨丹!我对所有四个角都做了'0',并且没有选中“限制边距”,因为它的垂直长度很长 –

+0

我认为这是你想要看的。 http://stackoverflow.com/a/27227174/6535878 – Nick

回答

0

因此,原来你需要一个内容视图(这是一个普通的UIView)第一,所以最终的结构是

查看 - >滚动查看 - >查看内容 - >堆栈视图

现在这里是关键部分:您需要将内容视图设置为等宽度约束,以滚动视图为视图而不是。滚动视图不关心你在Xcode中看到的布局大小,所以你需要将滚动视图内的所有内容限制在滚动视图之外。堆叠视图的制约因素有四个0到内容视图(我很可能只是具有堆栈视图做内容视图的工作,但它的作品所以我不会乱用它)

提供this link第5步由Nick上面给了我想法

0

滚动视图的重点在于它适合其内容并允许您滚动到它。所以,如果你不限制内容,它会采取任何自然需要的大小。

因此,基本上,您需要将内容的宽度限制为与滚动视图的宽度相同,以便根据其内在要求垂直增长。即将滚动视图和堆栈视图的宽度设置为相等。

+0

我添加了一个约束,以便Stack View.width = width,它看起来是一样的。我还将内容拥抱优先级设置为水平1000,但仍然被推下离页。 我知道我应该提供更多信息,但我不确定什么可以帮助 –