2013-04-06 124 views
7

我有三個文本字段,我希望能夠將光標移動到下一個字段。當到達最後一個時,鍵盤解散。但沒有什麼適合我......這是我的一個例子。但是,沒有任何動作,並且當我選擇下一個按鈕時沒有任何反應。如何將UITextField光標移動到下一個文本字段

- (BOOL)textFieldShouldReturn:(UITextField *)textField { 
    if (textField == field1TextField) { 
     [textField resignFirstResponder]; 
     [field2TextField becomeFirstResponder]; 
    } 
    else if (textField == field2TextField) { 
     [textField resignFirstResponder]; 
     [field3TextField becomeFirstResponder]; 
    } 
    else if (textField == field3TextField) { 
     [textField resignFirstResponder]; 
    } 
    return YES; 
} 
+3

你確定文本字段代表設置正確嗎?這個方法是否被調用? – stevex 2013-04-06 00:25:55

+0

這個方法是否被調用?如果它確實..和textField == field1TextField塊被稱爲..和field2TextField不是零..那麼它看起來應該工作 – stevex 2013-04-06 00:31:24

+0

作爲一個問題形式您的評論!我忘了那樣做!我會檢查它! – 2013-04-06 00:32:33

回答

3

該方法綁定的對象應設置爲文本字段的委託。通過在方法中設置一個斷點來檢查它,以驗證它是否在你認爲是的時候被調用。

如果您使用的是筆尖或故事板,則field...實例變量應該是正確連接的插座。如果它們是以編程方式創建的,則應確保它們具有分配給它們的對象。當您在方法中時,通過檢查這些變量的值來驗證這一點。

在調用becomeFirstResponder另一個控件之前,您不必在其他控件上調用resignFirstResponder

+0

感謝您的回答 – 2013-04-06 00:35:46

相關問題