您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關layoutsubviews有什么用,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
在UIView里面有一個方法layoutSubviews,這個方法具體作用是什么呢?
layoutsubviews官方文檔解釋
我們先來看看蘋果官方文檔的解釋:ThedefaultimplementationofthismethoddoesnothingoniOS5.1andearlier.Otherwise,thedefaultimplementationusesanyconstraintsyouhavesettodeterminethesizeandpositionofanysubviews. Subclassescanoverridethismethodasneededtoperformmorepreciselayoutoftheirsubviews.Youshouldoverridethismethodonlyiftheautoresizingandconstraint-basedbehaviorsofthesubviewsdonotofferthebehavioryouwant.Youcanuseyourimplementationtosettheframerectanglesofyoursubviewsdirectly. Youshouldnotcallthismethoddirectly.Ifyouwanttoforcealayoutupdate,callthesetNeedsLayoutmethodinsteadtodosopriortothenextdrawingupdate.Ifyouwanttoupdatethelayoutofyourviewsimmediately,callthelayoutIfNeededmethod.
最后一段說,不要直接調用此方法。如果你想強制更新布局,你可以調用setNeedsLayout方法;如果你想立即數顯你的views,你需要調用layoutIfNeeded方法。
layoutSubviews作用
layoutSubviews是對subviews重新布局。比如,我們想更新子視圖的位置的時候,可以通過調用layoutSubviews方法,既可以實現對子視圖重新布局。
layoutSubviews默認是不做任何事情的,用到的時候,需要在自雷進行重寫。
layoutSubviews以下情況會被調用
蘋果官方文檔已經強調,不能直接調用layoutSubviews對子視圖進行重新布局。那么,layoutSubviews什么情況下會被調用呢?通過百度搜索,發現以下幾種情況layoutSubviews會被調用。
直接調用setLayoutSubviews。(這個在上面蘋果官方文檔里有說明)
關于“layoutsubviews有什么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。