1. 程式人生 > >自動佈局中的NSAutoresizingMaskLayoutConstraint

自動佈局中的NSAutoresizingMaskLayoutConstraint

在使用自動佈局的時候,如果是自己通過程式碼直接寫的約束(即不通過SnapKit等第三方庫或StoryBoard,Xib之類),那麼就會出現NSAutoresizingMaskLayoutConstraint的問題。運氣好的話,只是彈出warning,不影響實際佈局,但是如果像我一樣運氣不好,就會出現整個頁面的佈局錯亂。
解決該問題的方法也十分簡單,就是對每一個view都設定translatesAutoresizingMaskIntoConstraintsfalse。如下面程式碼所示:

//既然使用自動佈局,建議設定autoResize為false
view.autoresizesSubviews = false
view.translatesAutoresizingMaskIntoConstraints = false

當然了,如果不是必須的話,還是建議大家使用SnapKit第三方庫或者StoryBoard(或Xib)開發更方便一些,也不會出現這種問題。