美文网首页iOS DeveloperiOS
xib中 UIScrollView 设置contentSize

xib中 UIScrollView 设置contentSize

作者: Rockerliang | 来源:发表于2016-08-25 17:00 被阅读2678次

    在xib(storyboard)中使用 UIScrollView, 默认是勾选了autolayout选项的,在autolayout下,iOS计算UIScrollView的contentsize的机制是略有不同。在autolayout中,会在viewDidAppear之前根据subview的constraint重新计算UIScrollView的contentsize。 当在viewdidload里手动设置contentsize时,会再重新计算一次,把前面手动设置的值覆盖掉。

    iOS7中,需在viewDidLayoutSubviews中设置scrollView.contentSize属性

    -(void)viewDidLayoutSubviews
    {
        self.scrollView.contentSize = CGSizeMake(xx,xx);
    }
    

    iOS8及以上,只需要在viewDidAppear方法中设置就好了

    -(void)viewDidAppear:(BOOL)animated
    {
        [super viewDidAppear:animated];
        self.scrollView.contentSize = CGSizeMake(xx,xx);
    }
    

    所以,如果要最低支持iOS7系统,只需在viewDidLayoutSubviews中设置contentSize属性即可。

    相关文章

      网友评论

        本文标题:xib中 UIScrollView 设置contentSize

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