[iOS] viewWillLayoutSubview

最近在看viewWillLayoutSubviews的使用時機,發現跟我想像的不一樣,官方對此方法的描述是:
在 view controller 要對他內含的元件進行佈局前,會呼叫這個方法。當 view 的邊界改變, view 會去調整內含的 subview ,如果你覆寫此方法,你可以在 view 佈局前做出一些改變。
另外,當你的設備方位改變而旋轉時,也會呼叫這個方法,這是因為 view controller 內含的 view 也被其父視圖改變位置與尺寸,自然就會呼叫此方法,在此方法的實作中,可以呼叫 statusBarOrientation 來決定設備的方位。
除此之外我也看了官方的範例,到底實際上在這個方法裡面做了什麼。比方說,畫面裡面有圖片時,想要根據圖片的寬高比例去調整視圖尺寸,就會在這個方法裡面實作。或是設定了子視圖裡面佈局時需要的資訊。

留言