2016-11-08 75 views
0

我使用NavigationController將UIView放到ViewController的視圖中。Xcode 8故事板框架大小問題

並將新的UIView的約束設置爲頂層空間TopLayoutGuide:0,引導空間到超視圖:0拖尾空間到超視圖:0和底層空間到底層LayoutGuide:0。

因此,在IB中,新的UIView看起來很好,我的意思是它的頂部就在導航欄下方,並填充其餘部分。

但是,在Objective-C中,我輸出NSLog的self.view.frame.size和新的UIView的frame.size。我預計新的UIView的高度小於self.view的高度因爲新的UIView的頂部來自導航欄,而self.view封面的全部區域。

但結果是他們兩人的身高相同。這使得新的UIView上的內容錯位。

你有什麼好的解決方案嗎?

謝謝。

+1

你在哪裏打印它們? – Tj3n

+2

在調用viewDidLayoutSubviews之前,幀的大小將不正確,這是您解決所有約束的點。 – norders

+0

謝謝你的好建議。我會嘗試重寫代碼。 –

回答

0

在viewDidLauoutSubviews上編寫代碼解決了問題。