2016-04-15 64 views
-1

有沒有什麼辦法可以觸發不使用自動佈局和大小類的不同設備的自動調整大小? 我使用預定義對象(UIButtons,textfield ...等),但大多數情況下我使用動態自定義對象,並且在調整不同設備上的大小時遇到​​問題。 當我們不需要使用約束和自動佈局+大小類時,我正在尋找舊的方式。如何自動調整cocoa xcode的大小?

有什麼想法? 謝謝!

回答

0

如果你想在你的UIViewController執行大小調整邏輯,加伊娃來存儲CGSize並初始化到CGSizeZero,然後覆蓋viewDidLayoutSubviews,視圖的大小與你存儲的變量。如果它們不同,則存儲新的尺寸並更新視圖的框架(如果它們相同),return

如果您想在UIView中設置調整大小的邏輯,請執行相同的操作,但請改爲layoutSubviews。不要忘記撥打super

+0

我在視圖中的視圖中有一些系統在視圖中...但我叫它viewDidLoad ...我會嘗試你的想法和上面的一個,我會告訴你誰最好的工作... –

0

您可以使用自動調整大小口罩這是自動佈局和大小班的老同學版本

UIView *myView = [[UIView alloc]initWithFrame:CGRectMake(0.0f, 0.0f, self.view.bounds.size.width, 100.0f)]; 
myView.autoresizingMask = UIViewAutoresizingFlexibleWidth; 

有幾個人來幫助你得到想要的結果

typedef NS_OPTIONS(NSUInteger, UIViewAutoresizing) { 
    UIViewAutoresizingNone     = 0, 
    UIViewAutoresizingFlexibleLeftMargin = 1 << 0, 
    UIViewAutoresizingFlexibleWidth  = 1 << 1, 
    UIViewAutoresizingFlexibleRightMargin = 1 << 2, 
    UIViewAutoresizingFlexibleTopMargin = 1 << 3, 
    UIViewAutoresizingFlexibleHeight  = 1 << 4, 
    UIViewAutoresizingFlexibleBottomMargin = 1 << 5 
}; 

個人一旦你」重新感到自信我會考慮以編程方式讓您的頭部創建一些自動佈局,但這是一個開始。