触摸文本字段时创建动作
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)
}
}
我需要在触摸文本字段时执行操作。我导入了 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)
}
}