8

我是故事板的新手;我之前做过一些 Interface Builder 和很多手动 UI 定位。我已经搜索了这个问题,尝试了其他相关帖子中的解决方案,但无济于事。

我有一个在 Storyboards 中添加了 UIScrollView 的视图控制器。ScrollView 插座已连接,属性已合成。滚动启用被选中。弹跳已检查。即便如此,也没有迹象表明会发生任何滚动。当我检查 Bounces Vertically 时,我至少可以看到可滚动的内容,但在我释放后它会反弹回来。我发现的框架尺寸设置为 320 和 521。我尝试了不同的高度,但没有任何帮助。(Storyboards 中设置的尺寸应该是多少,以适应新旧手机尺寸?)。

在 viewDidLoad 中,我添加了

    [scrollView setContentSize:CGSizeMake(320, 1000)];

之后的日志语句确认该值已被接受。但这也无济于事。

有人在一篇帖子中建议添加:

- (void)viewDidLayoutSubviews
{
    [super viewDidLayoutSubviews];
    [self.scrollView setContentSize:CGSizeMake(320, 808)];
}

当控制器加载时,这会导致程序崩溃。

任何帮助将不胜感激!

谢谢。

4

2 回答 2

18

事实证明有两件事是必要的:

1) 将滚动视图的高度设置为 480。

2)将约束添加到滚动视图中的最底部字段。约束是 Pin >> Bottom Space to Superview。

于 2013-10-22T01:22:39.220 回答
9

只需添加以下方法:

- (void)viewDidLayoutSubviews
{
    [super viewDidLayoutSubviews];
    [self.scrollView setContentSize:CGSizeMake(320, 1700)];
}

这对我来说非常有效。

于 2014-10-15T19:48:39.317 回答