iOS scrollView自动布局技巧之二 - 纯代码自动布局

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS scrollView自动布局技巧之二 - 纯代码自动布局相关的知识,希望对你有一定的参考价值。

参考技术A

目录:

注意:
- 不管以上那种情况,scrollView 本身的大小和位置一定要相对固定!
- 可以使用frame直接设置,也可以使用自动布局设置。

根据排列组合,共有 2*2 = 4 中情况,下面分别分析:

这种情况没什么好说的,直接设置即可。

这种情况相当于是第四种情况的简化版,故请先看[第四种方式]。

我们知道,只要设置 scrollView 的 contentSize,就限定了 scrollView 的可滚动范围。所以这种情况,并不能很好的根据子控件的变化而动态显示完整的内容。

所以子控件bounds变化的情况,需要使用[第四种方式]设置。

首先来做个分析:

第1条,两种设置方式,自己根据实际情况选择一种即可;

第2条,将所有子视图塞进一个容器视图中。即先给scrollView添加一个 唯一直接子视图

通俗点说就是创建一个 sizeView 设置其大小(直接设置frame或者使用autolayout设置皆可),然后将其添加到scrollView的子视图,其他七七八八的所有小子视图都添加在这个直接子视图 sizeView 中,这个直接子视图就相当于 contentView。
这样只要设置这个直接子视图 sizeView 的大小和约束就好了。

如果设置好了这个直接子视图 sizeView 的约束,那么这个直接子视图 sizeView 的范围就是 scrollView 的滚动范围喽!

第3条,其实设置子视图布局就2个要点:

如图1、图2
图2为竖直、水平方向皆可滚动,注意观察滚动条位置。

图2为竖直、水平方向皆可滚动,注意观察滚动条位置。

如此设置布局是不是很方便呢?

UIScrollView自动布局技巧

1.用storyboard自动布局注意点:

(1)首先添加一个view,view的四周和scrollview一致,设置view的大小;

(2)设置view的宽和高=> 设置scrollview的contentSize;

(3)所有的控件都添加在view上。

 

2. 代码布局

技术分享

以上是关于iOS scrollView自动布局技巧之二 - 纯代码自动布局的主要内容,如果未能解决你的问题,请参考以下文章

在 iOS 6 上使用自动布局在 ScrollView 中嵌入 ImageView

在自动布局的情况下,IOS scrollview 模糊的可滚动内容高度

在 Swift 中使用 ScrollView 进行自动布局

Masonry复杂ScrollView布局

Masonry scrollview循环布局

在 iOS 中使用自动布局填充 UIScrollView 的内容