两个文本字段的第一响应者
First Responder Of Two Textfields
所以在我制作的一个小应用程序中,如果用户单击登录按钮,屏幕底部会弹出两个文本字段(用户名和密码文本字段)。现在我希望当用户单击登录按钮时键盘也自动弹出。为此,我说:
self.userNameTextField.becomeFirstResponder()
self.passwordTextField.becomeFirstResponder()
现在由于某种原因我无法单击 userNameTextField。光标始终停留在 passwordTextField 上。我认为这是因为它使密码文本字段成为第一响应者,所以它不会让我点击用户名。有没有其他方法可以在不使用 firstResponder 方法的情况下自动调出键盘?
通过执行您在此处描述的操作,您正在使 userNameTextField
成为第一响应者,之后您正在使 passwordTextField
成为第一响应者 - 最终将 passwordTextField
设置为第一响应者(因为 Swift 快如闪电,你甚至都不会注意到 userNameTextField
成为第一响应者的那一刻)。
所以,选择你要呼叫的那个(可能 self.userNameTextField.becomeFirstResponder()
因为你希望用户先输入用户名)然后你可以呼叫 resignFirstResponder()
(这将辞去 userNameTextField
作为第一响应者的角色用户点击键盘上的 "Return")通过实现 UITextFieldDelegate
方法 textFieldShouldReturn
(如果您需要帮助请告诉我),然后立即调用 self.passwordTextField.becomeFirstResponder()
使您的 passwordTextField
第一响应者,以便用户可以输入密码。
所以在我制作的一个小应用程序中,如果用户单击登录按钮,屏幕底部会弹出两个文本字段(用户名和密码文本字段)。现在我希望当用户单击登录按钮时键盘也自动弹出。为此,我说:
self.userNameTextField.becomeFirstResponder()
self.passwordTextField.becomeFirstResponder()
现在由于某种原因我无法单击 userNameTextField。光标始终停留在 passwordTextField 上。我认为这是因为它使密码文本字段成为第一响应者,所以它不会让我点击用户名。有没有其他方法可以在不使用 firstResponder 方法的情况下自动调出键盘?
通过执行您在此处描述的操作,您正在使 userNameTextField
成为第一响应者,之后您正在使 passwordTextField
成为第一响应者 - 最终将 passwordTextField
设置为第一响应者(因为 Swift 快如闪电,你甚至都不会注意到 userNameTextField
成为第一响应者的那一刻)。
所以,选择你要呼叫的那个(可能 self.userNameTextField.becomeFirstResponder()
因为你希望用户先输入用户名)然后你可以呼叫 resignFirstResponder()
(这将辞去 userNameTextField
作为第一响应者的角色用户点击键盘上的 "Return")通过实现 UITextFieldDelegate
方法 textFieldShouldReturn
(如果您需要帮助请告诉我),然后立即调用 self.passwordTextField.becomeFirstResponder()
使您的 passwordTextField
第一响应者,以便用户可以输入密码。