2017-03-05 48 views
0

这是我的设置:我的滚动视图不想要滚动

setup

我不知道我做错了。图像视图大于视图和滚动视图的大小。约束设置如下:

滚动视图:等高度视图* 0,5,等宽度视图,中心Y和X视图。

查看(滚动视图内):固定全部为零的滚动视图,等于高度和宽度。我也试过在Scroll视图中将X和Y居中放置,而不是相同的高度和宽度,但它不会滚动。

如何让滚动视图滚动?谢谢。

+0

嘛,我不是100%肯定,但似乎你的滚动视图从它的唯一的孩子获得它的内容大小 - 这被固定到它,并有看法相同的尺寸。它无法知道这种观点有其他孩子超越其边缘。你有没有尝试将scrollview的孩子放在它的中心,并禁用pininig边缘?所以它只会有中心x和中心y约束。 – Losiowaty

+0

每个教程都告诉我在一个滚动视图中将视图固定为值为0,所以我跟着那个...... – Petravd1994

回答

1

添加领先尾随顶部约束和相等的高度UIScrollView与0.5乘数的SuperView。现在您内容查看(在UIScrollView子视图),添加领先尾随顶部底部约束。还要加上等高宽度UIScrollView。将高度设置为优先级250.在此contentView内添加约束条件UIImageView

由于contentView将具有等于UIScrollView高度的低优先级的固定高度。一旦总高度(基于您添加的约束条件)将高于UIScrollView高度,此固定高度约束将会中断,并且内容将变为可滚动。所以至少你会总是有一个屏幕大小的一半,并成为可滚动的内容变得垂直过大。

+0

我做了你在这里写的东西,但是我在其他情况下做了它,因为我想让用户水平滚动。我不是等高,而是等宽。而不是设置高度的优先级,我用contentView的宽度优先级做了它。它不会滚动... – Petravd1994

+0

那么你怎么设置图像视图内的约束?如果我冒险猜测,那里应该有不正确的东西。 – Rikh

+0

我做了各种各样的事情,我将宽度值设置得非常大并集中在视图中。我做的另一件事是将它置于中间,然后将它固定到-20的右侧。所有没有结果... – Petravd1994

0

你需要给contentSize滚动视图。

ScrollView.contentSize = CGSize(width: 1000, height: 500)

+0

有没有办法动态地执行此操作? – Petravd1994

0

您对imageview有哪些限制? imageview的的

集约束:

Trailing ,leading,top,bottom - 0 and also give height constraint.