开发者社区> 问答> 正文

关于ScrollView中多个ViewController 的问题

UIScrollView中执行多个UIViewControllers,我手动初始化了UIViewController,并且将它们作为子视图添加到Scrollview,至此都一切正常。但是scrollview滚动只能显示一个UIViewController,再多一个也不行。

怎么会这样?请帮忙找一下原因

DTArticle *article = [self.articles objectAtIndex:0];
DTArticle *article2 = [self.articles objectAtIndex:1];
UIStoryboard *mainStoryBoard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:nil];
DTArticleViewController *controller = [mainStoryBoard instantiateViewControllerWithIdentifier:@"DTArticleViewController"];
DTArticleViewController *controller2 = [mainStoryBoard instantiateViewControllerWithIdentifier:@"DTArticleViewController"];
controller.article = article;
controller2.article = article2;    

[self.parentScrollView addSubview:controller.view];
[self.parentScrollView addSubview:controller2.view];
self.parentScrollView.contentSize = CGSizeMake(self.parentScrollView.frame.size.width
                                               * 2, self.parentScrollView.frame.size.height);
self.parentScrollView.showsHorizontalScrollIndicator = YES;
[self.parentScrollView setPagingEnabled:YES];
[self.view addSubview:self.parentScrollView];

展开
收起
爵霸 2016-03-19 09:53:41 2129 0
1 条回答
写回答
取消 提交回答
  • 在将两个viewController的view添加到srcollview中时,需要设置这两个控制器的view在uiscrollview中的显示的位置,说白了,就是在addsubview之前,先将两个控制器的view的frame重新设置,指定。
    像你上面的代码,肯定只会显示一个控制器的view.原因是另一个视图会被最后添加的那个视图覆盖住。

    2019-07-17 19:07:22
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载