2

我想将一个动作附加到键盘上的按钮。我不想创建自定义键盘,只处理搜索/执行/完成按钮操作。

在此处输入图像描述

谢谢!

4

2 回答 2

8

要处理返回键,您使用委托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),
}
于 2018-05-21T07:58:58.933 回答
3

实现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
    }
}
于 2018-05-21T08:02:25.623 回答