UIScrollView自动布局

往scrollVIew中添加一个按钮,直接报错
专门的view,作容器去确定scrollView滚动范围
水平滚动范围:view的宽度 + 左右两边间距
垂直滚动范围:view的高度 + 上下两边的间距

scrollView自动布局——代码约束

  • scrollView添加位置约束
[scrollView mas_makeConstraints:^(MASConstraintMaker *make) {
        make.top.equalTo(self.view).offset(64);
        make.left.bottom.right.offset(0);
}];
  • 给里面的容器contentView设置宽高约束
    • 用专门的view确定scrollView的滚动范围
[self.scrollView addSubView:self.contentView];
[self.contentView mas_makeConstraints:^(MASConstraintMaker *make) {
        make.edges.offset(0);
        // 这句话不加有问题!因为没有设置scrollView的宽度
        make.width.equalTo(self.view*3);
        make.height.mas_equalTo(800);
}];
  • contentView把滚动视图撑起来,它的宽高决定了scrollViewcontentSizewidthheight
  • 以后所有子控件都添加到contentView容器里,都基于contentView来布局
  • bounds = NO就是一个滚动的view,没弹簧效果


edge补充

// make top, left, bottom, right equal view2
make.edges.equalTo(view2);
// make top = superview.top + 5, left = superview.left + 10,
// bottom = superview.bottom - 15, right = superview.right - 20
make.edges.equalTo(superview).insets(UIEdgeInsetsMake(5, 10, 15, 20))

你可能感兴趣的:(UIScrollView自动布局)