在将约束应用于UIScrollView时需要帮助

时间:2017-01-31 07:11:29

标签: ios swift uiscrollview autolayout

我以编程方式添加子视图。 要求:添加额外视图时,应启用滚动条。 我应用的约束:  enter image description here

为了删除顶部的额外空格,我写了self.automaticallyAdjustsScrollViewInsets = false  同时将内容大小设为self.scrollView.contentSize = CGSize(width: self.contentView.frame.width, height: self.contentView.frame.height*2)

但是当加载视图时,滚动被完全禁用。

请帮帮我

3 个答案:

答案 0 :(得分:2)

当您使用自动布局时,您必须在 viewcontroller 方法中设置内容大小,您必须覆盖以下方法。

-(void)viewWillLayoutSubviews;

swift

override func viewWillLayoutSubviews() {

    }

答案 1 :(得分:1)

尝试根据滚动内容视图底部子视图的(origin.y + height)设置contentview高度。

答案 2 :(得分:1)

您需要做的事情很少,请检查您是否已启用此功能。

  1. 跳出
  2. 垂直弹跳
  3. 滚动已启用
  4. 如果启用那些仍然无法帮助滚动,请添加ContentView的高度限制。您必须将此约束作为IBOutlet连接到View Controller。

    我相信您的数据是从服务器获取的,因此您的内容高度不明确。因此,在您的问题中打印contentSize(375.0,1334.0)的位置,添加此行代码,之后您就可以滚动。

    YourHeightConstraint.constant = self.scrollView.contentSize.height