关于UIScrollView设置约束时需要注意的几点

今天在写毕设的时候发现一个问题,那就是原来的所有子控件是加在view上的,但由于在真机上测试需要弹出键盘,所以这时候就需要把原来的view替换成UIScrollView,于是我新建了一个UIScrollView,并对它添加约束,到这里都非常顺利.
接下来坑就来了,我把所有的subview从原来的控制器view都加载到了UIScrollView上,一运行发现宽度不对,这个问题困扰了半天,有人说新建一个 Container,结果是无效的,.自己又捣鼓了半天,终于发现在container设置约束时,不光要设置上下左右,并且宽度和高度也要设置,此时UIScrollView的contentsize也会确定,如果不设置就会有各种问题.

UIScrollView * scrollView = [[UIScrollView alloc]init];

[self.view addSubview:scrollView];

scrollView.backgroundColor = [UIColor greenColor];

[scrollView makeConstraints:^(MASConstraintMaker *make) {
    make.left.right.bottom.equalTo(0);
    
    make.top.equalTo(self.mas_topLayoutGuide).offset(0);
}];
NSLog(@"%@",NSStringFromCGRect(self.view.frame));

NSLog(@"%@",NSStringFromCGRect(scrollView.frame));

UIView * container = [[UIView alloc]init];

container.backgroundColor = [UIColor blueColor];

[scrollView addSubview:container];

[container makeConstraints:^(MASConstraintMaker *make) {

    make.left.right.top.equalTo(0);
    make.height.equalTo(1000);
    make.width.equalTo(1000);
    make.bottom.equalTo(scrollView.bottom).offset(0);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容