我有4个UITextFields。在输入一个字符后,我希望下一个UITextField自动激活,而不必按next。我用的是Swift 2你知道吗?
UITextField
next
zynd9foi1#
要选择下一个textField,您必须指定第一个Responder。您可以使用textField的委派方法来决定何时该textField应该变成作用中。
eoigrqb62#
首先为每个UITextField设置不同的标记,然后添加UIControlEvents.editingChanged方法。当您将@IBOutlet s和@IBAction s与xib文件连接起来时,您将得到类似于以下内容的结果:
UIControlEvents.editingChanged
@IBOutlet
@IBAction
class ViewController: UIViewController { @IBOutlet weak var textField1: UITextField! @IBOutlet weak var textField2: UITextField! @IBOutlet weak var textField3: UITextField! @IBOutlet weak var textField4: UITextField! @IBAction func textChanged(_ sender: UITextField) { if sender.hasText { switch sender { case textField1: textField2.becomeFirstResponder() case textField2: textField3.becomeFirstResponder() case textField3: textField4.becomeFirstResponder() default: sender.resignFirstResponder() } } } }
2条答案
按热度按时间zynd9foi1#
要选择下一个textField,您必须指定第一个Responder。您可以使用textField的委派方法来决定何时该textField应该变成作用中。
eoigrqb62#
首先为每个
UITextField
设置不同的标记,然后添加UIControlEvents.editingChanged
方法。当您将
@IBOutlet
s和@IBAction
s与xib文件连接起来时,您将得到类似于以下内容的结果: