触摸文本字段时创建动作

Create action when textfield is touched

我需要在触摸文本字段时执行操作。我导入了 Material 来为 UI 设计动画提供一些效果。我需要在触摸 textfield.But 时显示视图 我收到错误消息:无法识别的选择器发送到实例 0x7fed2b046800' *** 首先抛出调用栈:

您不必添加目标(而且这不是添加选择器的正确方法)

 self.dobField.addTarget(self, action:Selector(("textFieldDidBeginEditing")), for: UIControlEvents.editingDidBegin)

你只需要

self.dobField.delegate = self

func textFieldDidBeginEditing(_ textField: UITextField){}

//

正确的选择器是

self.dobField.addTarget(self, action:#selector(someMethod), for: UIControlEvents.editingDidBegin)

@objc func someMethod(_ textField: UITextField){}

顺便说一句,您已经符合 UITextFieldDelegate

您可以处理此购买设置,使您的视图控制器符合 UITextFieldDelegate,并将文本字段的 delegate 设置为视图控制器

override func viewDidLoad() {
    super.viewDidLoad()

    dobField.delegate = self // or do this in your storyboard
}

然后用这两种方法之一处理你的动作…

extension EditProfileViewController: UITextFieldDelegate {

    func textFieldShouldBeginEditing(_ textField: UITextField) -> Bool 

        return true // or return false if you don't want to actually edit the field
    }

    func textFieldDidBeginEditing(_ textField: UITextField)

    }
}