我的ViewController
内有scrollView
和内容View
。
labels
内部还有一些Content View
和内容。
此后,当view
加载时我必须将数据从其他地方传递到此view controller
,然后按代码加载其他一些视图。
scrollview
Content height
和身高确实已更新,我确实在ViewWillAppear
处加载和添加了观看次数。但即使内容大小大于scrollview
的高度,我也无法滚动它。
Scroll View
身高: 667 。 Scroll View
内容高度: 1632
ContentView
身高: 1632
答案 0 :(得分:2)
您的滚动视图未滚动,因为您为内容视图指定了固定大小。
别担心,只需要限制高度出口。
检查下面的图片,如何克制约束的出口,
注意: - 您需要创建高度限制。
从你的形象。
现在设置在 viewDidLayoutSubviews
中-(void)viewDidLayoutSubviews
{
NSInteger screenheight=[ [ UIScreen mainScreen ] bounds ].size.height;
if (screenheight > 504 + 64)
{
_contentviewHeight.constant = screenheight-64;
}
}
最后但并非最不重要,不要忘记从调整Scrollview昆虫中删除Tick,
答案 1 :(得分:0)
在Autolayout的情况下,您要添加到scrollview的任何视图。您必须添加约束(基本上是顶部约束),以便Scrollview自动计算内容大小。
请参阅下面以编程方式添加约束。
iOS create NSLayoutConstraint programmatically for table view cell content
编辑: -
就像你说的那样,SView在故事板中。因此,在SView上从故事板本身创建约束。
E,R和H View将以编程方式添加约束
链接只是一个例子
您将使用[self addConstraint]而不是[self.ContentView addConstraint]
此外,请参考这个: -
答案 2 :(得分:0)
好的,最后。
尝试重试后无济于事。 我只是放弃了在ViewController上放置自动布局,它具有滚动视图本身。
所以我取消了自动布局,然后是VOILA。
显然,具有滚动视图的视图控制器不需要自动布局。我通过代码输入的视图需要在故事板中自动布局。在我正确地调整视图中的所有约束并且从不给它们宽高比约束但仅修正它们的宽度和高度之后。完成。
所以我希望任何与我同样沮丧的人都能看到这一点并听从我的建议。不要在滚动视图或其内容视图上放置自动布局。完全解开它。为您要放入的视图执行自动布局。您只需指定视图'正确的宽度和高度,它将起作用。