我试图通过此YouTube示例构建分页滚动视图: https://www.youtube.com/watch?v=vLUQz7TeE7w
但是,我使用Storyboard来设置我的scrollview和子视图,然后,在代码中,我在viewDidLoad中设置了适当的帧:
//set up scroll view and child views
self.allowanceScrollView.delegate = self;
[self.allowanceScrollView setContentSize:CGSizeMake(3 * self.allowanceScrollView.bounds.size.width, self.allowanceScrollView.bounds.size.height)];
CGRect aFrame = self.allowanceScrollView.bounds;
self.dailyView.frame = aFrame;
aFrame = CGRectOffset(aFrame, self.allowanceScrollView.bounds.size.width, 0);
self.weeklyView.frame = aFrame;
aFrame = CGRectOffset(aFrame, self.allowanceScrollView.bounds.size.width, 0);
self.customView.frame = aFrame;
我还尝试手动设置scrollview委托,但是当页面加载时,scrollview会加载前面的最后一个视图(我将它们按照示例中的颜色进行编码)并且没有滚动。
我已尝试使用scrollview查找其他使用分页但未成功的示例。 任何帮助将不胜感激。
编辑:值得一提的是我确实为每个视图设置了正确的出口。
编辑:故事板中视图层次结构的屏幕截图:
答案 0 :(得分:1)
通常,始终在viewDidAppear中设置UIScrollViews。此外,请确保您的滚动视图可滚动(即使默认设置为YES)。
例如......
-(void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:YES];
scrollView.backgroundColor = [UIColor clearColor];
scrollView.opaque = NO;
[scrollView setScrollEnabled:YES];
[scrollView setContentSize:CGSizeMake(320, 800)];
[super viewDidLoad];
}
答案 1 :(得分:0)
我在Storyboard中关闭了该控制器的自动布局,一切都运行良好。自从他回答了原来的问题后,我会给Roecrew这个答案,但我想在这里为其他人添加。