代码部分 : https://github.com/ZhaoBingDong/CAAnimaiton
一 sizeThatFits 和 sizeToFit的区别
UIView 有个 sizeToFit 方法来计算 UIView 合适的 bounds.size, 注意 autolayout 约束过的 view 该方法失效.
```
- (void)sizeToFit;
// calls sizeThatFits: with current view bounds and changes bounds size.
调用这个方法会改变当前 view 的 bounds.size
```
```
- (CGSize)sizeThatFits:(CGSize)size; // return 'best' size to fit given size. does not actually resize view. Default is return existing view size
// 意思大概是 返回“最佳”大小适合给定的大小 默认返回已经存在的视图 size
```
当一个 view 例如 label 设置完 text 属性后 调用[label sizeToFit]; 会根据 label 内容计算出合适的 size 来完全显示 label 内容
```
一 sizeThatFits 和 sizeToFit的区别
UIView 有个 sizeToFit 方法来计算 UIView 合适的 bounds.size, 注意 autolayout 约束过的 view 该方法失效.
```
- (void)sizeToFit;
// calls sizeThatFits: with current view bounds and changes bounds size.
调用这个方法会改变当前 view 的 bounds.size
```
```
- (CGSize)sizeThatFits:(CGSize)size; // return 'best' size to fit given size. does not actually resize view. Default is return existing view size
// 意思大概是 返回“最佳”大小适合给定的大小 默认返回已经存在的视图 size
```
当一个 view 例如 label 设置完 text 属性后 调用[label sizeToFit]; 会根据 label 内容计算出合适的 size 来完全显示 label 内容
```