0
我想創建一個UIView,它既適用於縱向模式也適用於橫向模式,但不知道如何實現這一點。僅供參考 - 我通過代碼佈置所有組件,所以沒有XIB或Storyboard ...這是一項要求。如何爲縱向和橫向佈局創建UIView
我有一個名爲createView
的方法,該方法將我創建視圖時調用的所有視圖組件(按鈕,標籤等等)進行佈局。
我不知道是說我的控制器在水平模式下通過addSubview:myNewCustomView
添加視圖,那麼在從縱向切換到橫向時,如何更改自定義UIView中組件的佈局?
我是否會在我的自定義UIView中創建一個方法來佈局肖像和另一個佈景?如果我有兩種方法,我必須得到父母顯示模式,橫向或縱向,然後在我的自定義UIView中調用適當的createView方法?
但在layoutSubviews我怎麼知道我是否應該佈局橫向或縱向? L = CGRectMake(35,759,380,72)P = CGRectMake(235,49,60,12) – jdog
在調用setNeedsLayout之前,您可以在CustomView中保留一個變量用於定位並將該變量設置爲「willRotateToInterfaceOrientation」方法 –
我寧願不是從viewController設置視圖佈局模式,而是讓視圖控制器在佈局模式更改時自行完成。試圖通過以下獲取佈局,但它不起作用UIInterfaceOrientationIsLandscape([[UIDevice currentDevice] orientation]) – jdog