2011-05-31 61 views
0

我有一個loginviewcontroller,有2個UITextField,用戶名,密碼,按鈕和UIImageView。這應該適用於縱向和橫向模式。然而,在我的橫向模式下,我希望能夠集中所有這些元素。我該怎麼做呢?此外,我需要縮放元素的大小,以便它是合適的。縮放和居中UITextFields

我試着玩彈簧,它看起來非常奇怪,因爲一切都被拉長了。

回答

0

您可以在視圖上設置「contentMode」。這將告訴超級視圖如何在重繪或佈局發生時縮放子視圖。

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { 

    if (interfaceOrientation == UIInterfaceOrientationPortrait) { 

     //align in one way 
     return YES; 
    } 
    else if (interfaceOrientation == UIInterfaceOrientationLandscapeLeft) { 

     //align in a different way 
     return YES; 
    } 
    return NO; 
} 
+0

是的,我知道我可以使用這種方法,我可以做textview.center = view.center居中,但我似乎無法: 您也可以手動的位置,並設置textAlignment等。得到正確的x和y中心.. – adit 2011-05-31 18:52:27

+0

我更新了我的答案了一下,它錯過了返回BOOL。該方法被命名爲「shouldAutorota .....」,這意味着它發生在任何旋轉發生之前。還有其他代表方法,如旋轉發生後發生的didRotateFromInterfaceOrientation。如果在旋轉之前引用view.center,它實質上會給你「之前」的座標。如果你在輪換之後進行更新,它們將被更新。我正在回答,好像你知道確切的座標並想自己提供它們,抱歉:) – RickiG 2011-06-01 08:20:53