layoutSubviews何時調用的問題,這個方法是當你需要在調整subview的大小的時候需要重寫(我這個翻譯不嚴謹,以下是原文:You should override this method only if the autoresizing behaviors of the subviews do not offer the behavior you want.),但有時候經常指望它被調用的時候沒被調用,不希望它被調用的時候被調用了,搞的很上火。根據國外社區一個人帖子,做了總結性翻譯。
layoutSubviews在以下情況下會被調用:
1、init初始化不會觸發layoutSubviews
2、addSubview會觸發layoutSubviews
3、設置view的Frame會觸發layoutSubviews,當然前提是frame的值設置前后發生了變化
4、滾動一個UIScrollView會觸發layoutSubviews
5、旋轉Screen會觸發父UIView上的layoutSubviews事件
6、改變一個UIView大小的時候也會觸發父UIView上的layoutSubviews事件
相關鏈接