我想将一个动作附加到键盘上的按钮。我不想创建自定义键盘,只处理搜索/执行/完成按钮操作。
谢谢!
要处理返回键,您使用委托textFieldShouldReturn
func textFieldShouldReturn(_ textField: UITextField) -> Bool {
// your Action According to your textfield
return true
}
如何更改返回键
yourTextField.returnKeyType = UIReturnKeyType.search
yourTextField.returnKeyType = UIReturnKeyType.done
苹果枚举:
typedef NS_ENUM(NSInteger, UIReturnKeyType) {
UIReturnKeyDefault,
UIReturnKeyGo,
UIReturnKeyGoogle,
UIReturnKeyJoin,
UIReturnKeyNext,
UIReturnKeyRoute,
UIReturnKeySearch,
UIReturnKeySend,
UIReturnKeyYahoo,
UIReturnKeyDone,
UIReturnKeyEmergencyCall,
UIReturnKeyContinue NS_ENUM_AVAILABLE_IOS(9_0),
}
实现UITextFieldDelegate
方法textFieldShouldReturn
来获取该按钮的点击事件,而与按钮的名称无关。
class YourViewController: UIViewController, UITextFieldDelegate {
//conform protocol of `UITextFieldDelegate` in any of `viewDidLoad` or `viewWillAppear` method
self.textFieldYouWantToHandle.delegate = self;
func textFieldShouldReturn(_ textField: UITextField) -> Bool {
if textField == textFieldYouWantToHandle {
//any task to perform
textField.resignFirstResponder() //if you want to dismiss your keyboard
}
return true
}
}