如何绑定键盘iOS中的Go按钮的动作?
Answer 1:
Objective-C的
假设你正在使用的UITextField,你可以使用<UITextFieldDelegate>
方法textFieldShouldReturn
。
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
[textField resignFirstResponder]; // Dismiss the keyboard.
// Execute any additional code
return YES;
}
不要忘了您分配把这个代码的文本字段的委托类。
self.someTextField.delegate = self;
或者,如果你愿意使用UIControlEvents,你可以做以下
[someTextField addTarget:self action:@selector(textFieldDidReturn:) forControlEvents:UIControlEventEditingDidEndOnExit];
- (void)textFieldDidReturn:(UITextField *)textField
{
// Execute additional code
}
见@Wojtek卢特考斯基的回答 ,看看如何在Interface Builder做到这一点。
迅速
UITextFieldDelegate
class SomeViewController: UIViewController, UITextFieldDelegate {
let someTextField = UITextField()
override func viewDidLoad() {
super.viewDidLoad()
someTextField.delegate = self
}
func textFieldShouldReturn(textField: UITextField) -> Bool {
textField.resignFirstResponder() // Dismiss the keyboard
// Execute additional code
return true
}
}
UIControlEvents
class SomeViewController: UIViewController {
let someTextField = UITextField()
override func viewDidLoad() {
super.viewDidLoad()
// Action argument can be Selector("textFieldDidReturn:") or "textFieldDidReturn:"
someTextField.addTarget(self, action: "textFieldDidReturn:", forControlEvents: .EditingDidEndOnExit)
}
func textFieldDidReturn(textField: UITextField!) {
textField.resignFirstResponder()
// Execute additional code
}
}
Answer 2:
您可以连接UITextFiled
事件Did End On Exit
的Connections Inspector
。 据攻后触发Go
/ Return
/不管你选择的Return Key
在Attributes Inspector
。
文章来源: Action of the “Go” button of the ios keyboard