How could I enable / disable keyboard Return Key manually in Swift?
This question is not duplicated from these:
How to disable/enable the return key in a UITextField?
How to enable or disable the keyboard return key
Enable and Disable Keyboard return key on demand in iOS
我有两个
1 2 | @IBOutlet weak var textField1: UITextField! @IBOutlet weak var textField2: UITextField! |
-
textField1 具有"返回"键之类的"下一步"按钮; -
textField2 具有"返回"键之类的"转到"按钮;
textField1
textField2
我想启用第二个TextField的"转到"按钮,即使两个TextField都不为空。
我尝试将
谢谢你的帮助。
下图:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | /* ViewController.swift */ import UIKit class ViewController: UIViewController, UITextFieldDelegate { @IBOutlet weak var textField1: UITextField! @IBOutlet weak var textField2: UITextField! override func viewDidLoad() { super.viewDidLoad() // text field delegates textField1.delegate = self textField2.delegate = self // set return key styles textField1.returnKeyType = UIReturnKeyType.Next textField2.returnKeyType = UIReturnKeyType.Go // only enable textField2 if textField1 is non-empty textField2.enabled = false // only enable 'go' key of textField2 if the field itself is non-empty textField2.enablesReturnKeyAutomatically = true } // UITextFieldDelegate func textFieldShouldReturn(textField: UITextField) -> Bool { if (textField1.text?.isEmpty ?? true) { textField2.enabled = false textField.resignFirstResponder() } else if textField == textField1 { textField2.enabled = true textField2.becomeFirstResponder() } else { textField.resignFirstResponder() } return true } } |
运行方式如下: