美文网首页
UIScrollView 中使用 SDAutoLayout 对页

UIScrollView 中使用 SDAutoLayout 对页

作者: RedRose丶 | 来源:发表于2018-07-27 16:31 被阅读0次

    直接上代码
    1、设置代理并创建 UIScrollView

    _scrollView = [[UIScrollView alloc] init];
    _scrollView.backgroundColor = RGBColor(237, 240, 244);
    _scrollView.delegate = self;
    //alwaysBounceVertical,当 UIScrollView 的 contentSize 小于父视图的 frame 时仍然可以具有弹性效果
    _scrollView.alwaysBounceVertical = YES;
    _scrollView.showsHorizontalScrollIndicator = NO;
    _scrollView.showsVerticalScrollIndicator = YES;
    [self.view addSubview:_scrollView];
    //设置 _scrollView 的 frame
    _scrollView.sd_layout.spaceToSuperView(UIEdgeInsetsZero);
    //这里设置 BOTTOM_HEIGHT 是底部还有个按钮,定义了一个全局
    _scrollView.sd_layout.bottomSpaceToView(self.view, BOTTOM_HEIGHT);
    

    2、创建控件 设置 frame,并添加到 _scrollView 上

    _view1 = [[UIView alloc] init];
    _view1.backgroundColor = [UIColor whiteColor];
    [_scrollView addSubview:_view1];
    view1.sd_layout.topSpaceToView(_scrollView, 0)
    .leftSpaceToView(_scrollView, 0)
    .rightSpaceToView(_scrollView, 0)
    .heightIs(100);
    
    _view2 = [[UIView alloc] init];
    _view2.backgroundColor = [UIColor whiteColor];
    [_scrollView addSubview:_view2];
    view1.sd_layout.topSpaceToView(_view1, 0)
    .leftSpaceToView(_scrollView, 0)
    .rightSpaceToView(_scrollView, 0)
    .heightIs(100);
    。。。
    以下省略...
    

    3、将创建的控件添加到 _scrollView 上,并设置 _scrollView 的 ContentSize大小,bottomMargin 是 ContentSize 与 _scrollView 的间距

    [_scrollView sd_addSubviews:@[_view1,_view2,_view3,_view4,_view5]];
    [_scrollView setupAutoContentSizeWithBottomView:_view5 bottomMargin:10];
    

    精简来说就是:

    //设置 _scrollView 的 frame
    _scrollView.sd_layout.spaceToSuperView(UIEdgeInsetsZero);
    [_scrollView sd_addSubviews:@[_view1,_view2,_view3,_view4,_view5]];
    [_scrollView setupAutoContentSizeWithBottomView:_view5 bottomMargin:10];
    

    三步创建自适应高度的 UIScrollView,是不是感觉很简单,哪里写的不对,还请多多指教

    相关文章

      网友评论

          本文标题:UIScrollView 中使用 SDAutoLayout 对页

          本文链接:https://www.haomeiwen.com/subject/nxdgmftx.html