屏幕適配的學習
-
autoresizing技術
- 前提關閉autolayout
- 局限性:只能解決子控件和父控件關系問題
- 不能解決兄弟控件相對關系問題
-
autolayout技術 (iOS6開始就有了)
-
如果改變約束需要動畫效果,需要在改變約束后添加如下代碼
-
[UIView animateWithDuration:2 animations:^{
[self.view.viewName layoutIfNeeded];
}];
```
- 用代碼添加約束時,先要在把subView添加到父控件的時候,添加如下代碼
[superView addSubView:subView]
// 不要自動轉換約束
subView.translatesAutoresizingMaskIntoConstraints = NO;
使用可視化編程語言VFL進行autolayout布局設計.
masonry三方框架
- mas_make開頭創(chuàng)建約束
- mas_remake開頭刪除以前約束,添加新約束
- mas_update開頭覆蓋以前的某些約束
- make的約束類型 例子:
make.width.mas_equalTo(self.view).multipliedBy(0.5)offset(-50);
- 尺寸width\height\size
- 邊界left\right\leading\trailing\top\bottom
- 中心center\centerX\centerY
- 邊界edges