?AutoLayout這玩意越用越上癮 ? ?自從我學(xué)會了這個 ?還是那句話 能不用代碼就不用代碼?
這篇文章不講解AutoLayout 怎么使用 ?只是總結(jié)下最近學(xué)的東西 和更多你不知道的細(xì)節(jié)總結(jié)
本文大致講解個部分
1 . UIStackView
2. AutoLayout與Frame的關(guān)系
3.AutoLayout動畫
1 UIStackView
先推薦點資料 ?
UIStakView入門? ?iOS 9新功能 具體支持到幾我不清楚?
看完這個你以后布局更方便了 ?
舉個例子 AutoLayout分分鐘搞定等比例布局?之前我的帖子這樣做
現(xiàn)在有了更簡單的

2. AutoLayout與Frame的關(guān)系
曾經(jīng)有次我被面試官問了一個面試題 ? ? 如果你用了AutoLayout 再修改Frame 會有什么效果 有沒有什么不好的
看這問題 所有人都能猜到肯定有不好的 ?但是具體也不知道是啥 ?
看demo ?一個view

3.AutoLayout動畫
如果你用了AutoLayout ?那么做動畫的時候 ?你就不要再操作 Frame ?bounds center ?等position屬性
因為這些動畫都是臨時的 ?下次的View 被 setNeedsUpdateConstraint ?這些全都失效 ??
但是其他的可動畫屬性(Animation Properties) 還是可以的 如 Color ?alpha等?
1. 更新約束的內(nèi)容 ?

針對 Constraint 一掉要調(diào)用LayoutIfNeed() ?不然會造成不可預(yù)料的結(jié)果。 ?有可能下一刻動畫剩下 ?也有可能然并卵 ? ? ? 在NSLayoutConstraint中 ?唯一可變的 也就是 可set 可 get的屬性就 ? ?constant?
像其他FirstItem等是不可修改的 ? ? ?所以如果要修改參考物參看 下面的方法?
2 . ?替換約束的動畫?

添加約束可以通過 ?
self.view.addConstraint(<#T##constraint: NSLayoutConstraint##NSLayoutConstraint#>)
self.view.addConstraints(<#T##constraints: [NSLayoutConstraint]##[NSLayoutConstraint]#>)
在iOS 8中有更好的方法? newConstraint.active=true 就可以