2014-08-29 44 views
0

您好,我正在製作一個使用登錄頁面和註冊頁面的應用程序。例如,我需要在登錄頁面中進行設置,例如,我可以按返回鍵(自定義爲下一個),並將光標移動到下一個文本字段。我研究了很多,發現了一些應該可以工作的代碼,不管我做什麼都行不通。無法獲取返回鍵以移動文本字段

碼1 -

- (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; 
} 

這對我來說很有意義但它不會工作。

我的第一個文本字段叫做txtUsername,我的第二個文本字段叫做txtPassword。所以我定製這樣的代碼:

- (BOOL)textFieldShouldReturn:(UITextField *)textField { 
    if (textField == txtUsername) { 
     [textField resignFirstResponder]; 
     [txtPassword becomeFirstResponder]; 
    } 
    return YES; 
} 

我已經安裝了一個自定義的.h & .m文件和我把代碼在那裏。我應該以某種方式將代碼鏈接到文本字段?

+0

你的問題很可能與這些自定義文件......你爲什麼不移動代碼到您的登錄視圖控制器? – Mike 2014-08-29 15:13:11

+0

您可以發佈您的自定義.h/.m文件嗎? – Sebyddd 2014-08-29 15:15:18

+0

需要檢查的幾件事:txtUserName和txtPassword是否正確設置?是你的viewController(我假設)設置爲文本字段的代表? textFieldShouldReturn應該返回NO。 – 2014-08-29 15:36:43

回答

1

爲了調用textFieldShouldReturn方法,您需要設置UITextField的委託。在你viewDidLoad方法中,添加:

txtUsername.delegate = self; 
txtPassword.delegate = self; 
+0

非常感謝你的工作。真的很感謝幫助和快速的回​​應。 – Tavis 2014-08-29 16:01:57

+0

我很高興我的幫助。請考慮接受我的答案,如果你覺得它有用。 :) – Sebyddd 2014-08-29 18:10:03

相關問題