2011-03-29 80 views
0

我有一個按鈕,我需要找到它在不同位置的每個方向。 這裏我有UIButton在方向問題

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { 
if (interfaceOrientation== UIInterfaceOrientationPortrait || interfaceOrientation== UIInterfaceOrientationPortraitDown) 
button.frame=CGRectMake(150.0f,150.0f,55.0f,55.0f); 
else 
button.frame=CGRectMake(100.0f,100.0f,55.0f,55.0f); 
return YES; 
} 

它的工作的第一旋轉,當我將iPad旋轉按鈕,再進入到另一個位置。 例如在UIInterfaceOrientationPortrait按鈕不在這裏(150.0f,150.0f,55.0f,55.0f) 我該如何解決這個問題? 感謝您的幫助。

+0

你是什麼意思「去到另一個地點「? – occulus 2011-03-29 09:43:42

回答

0

方法中參數的名稱是interfaceOrientation,但您正在檢查orientation。您應該檢查interfaceOrientation

(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { 
    if (interfaceOrientation == UIInterfaceOrientationPortrait || interfaceOrientation == UIInterfaceOrientationPortraitDown) { 
     button.frame = CGRectMake(150.0f, 150.0f, 55.0f, 55.0f); 
    } 
    else { 
     button.frame = CGRectMake(100.0f, 100.0f, 55.0f, 55.0f); 
     return YES; 
    } 
} 
+0

對不起,這是我的錯誤。我是對的。 – Anton 2011-03-29 09:48:44

+0

那麼這個問題呢?你修好了,它現在可以工作嗎?或者你只是誤解了它? – occulus 2011-03-29 11:43:08

0

你檢查UIInterfaceOrientationPortraitUIInterfaceOrientationPortraitDown

但正確的枚舉名稱是UIInterfaceOrientationPortraitUpsideDown

參見:http://developer.apple.com/library/ios/#documentation/uikit/reference/UIApplication_Class/Reference/Reference.html%23//apple_ref/c/tdef/UIInterfaceOrientation

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { 
if (interfaceOrientation== UIInterfaceOrientationPortrait || interfaceOrientation== UIInterfaceOrientationPortraitUpsideDown) 
button.frame=CGRectMake(150.0f,150.0f,55.0f,55.0f); 
else 
button.frame=CGRectMake(100.0f,100.0f,55.0f,55.0f); 
return YES; 
} 
+0

UIInterfaceOrientationPortraitDown甚至不存在。另一個來自OP的錯誤粘貼錯誤?我放棄這個,如果OP甚至無法一次性得到他的代碼,我完全沒有意義。 – occulus 2011-03-29 11:42:16