2013-08-22 76 views
1

我有一個圖像視圖在該圖像視圖我把兩個textField在那裏。當我把設備放在UITextfield上的肖像模式位置是正確的。一旦我旋轉我的UITextfiled變化的設備位置。請幫助我。我正在使用IOS 6,感謝提前。如何在設備方向設置UITextfield位置

回答

0

嘗試的深入瞭解,以實現-(void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration 。 旋轉設備時會調用此方法。在這裏你可以設置UITextField的幀。

或者,您可以嘗試設置AutoresizingMask。

+0

嗨@ chris13請詳細解釋並舉幾個例子 –

+0

如果你想了解更多關於AutoreszingMasks的內容,請看這裏:[link](https://developer.apple.com/library/ios/documentation/WindowsViews /Conceptual/ViewPG_iPhoneOS/CreatingViews/CreatingViews.html#//apple_ref/doc/uid/TP40009503-CH5-SW5) – chris13

+0

感謝Crish13。 –

0

有很多方法可以實現它: 1.約束(從xcode-> editor-> pin調整) 2.通過務實的方式。

我個人建議你把這

by Ray Wenderlich

0
  1. 您可以通過AUTO LAYOUT(iOS6新功能)實現此功能。您在iOS6中創建的任何新xib將默認啓用「自動佈局」。你必須調整約束。爲此選擇您的文本字段和圖像視圖。現在從Xcode的編輯器菜單中選擇Pin。固定您的文本字段和圖像視圖。

有關自動佈局的更多信息,請閱讀這個真棒教程。 http://www.raywenderlich.com/20881/beginning-auto-layout-part-1-of-2

  1. 您也可以通過務實的方式來實現這一點。在willAnimateRotationToInterfaceOrientation爲您的文本字段和圖像

組框架

- (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation 
            duration:(NSTimeInterval)duration 
    { 
     [super willAnimateRotationToInterfaceOrientation:toInterfaceOrientation duration:duration]; 

     if (toInterfaceOrientation == UIInterfaceOrientationLandscapeLeft 
     || toInterfaceOrientation == UIInterfaceOrientationLandscapeRight) 
     { 
      // set frame for your text field and image in landscape orientation. 
     } 
     else 
     { 
      // set frame for your text field and image in landscape orientation. 
     } 
    } 

完蛋了。