无法识别的select器发送到实例Swift 3
我想用selector
实现TapGestureRecognizer
,下面是我添加tapGestureRecognizer到我的imageView的代码
let tapFirstGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(assignImage(_:))) firstImageView.isUserInteractionEnabled = true firstImageView.tag = 1 firstImageView.addGestureRecognizer(tapFirstGestureRecognizer)
这是行动方法
func assignImage(_ sender: UIImageView){ imagePicker.allowsEditing = false imagePicker.sourceType = .photoLibrary imageViewTag = sender.tag present(imagePicker, animated: true, completion: nil) }
编译器不断的说
[UITapGestureRecognizer标记]:无法识别的select器发送到实例0x6080001a7700'
问题出在你的方法声明和给UIGestureRecognizer
的对象分配tag
。 像这样改变你的方法声明。
func assignImage(_ sender: UITapGestureRecognizer)
要么
func assignImage(_ sender: UIGestureRecognizer)
编辑:使用UITapGestureRecognizer
访问UITapGestureRecognizer
对象。
func assignImage(_ sender: UITapGestureRecognizer) { if let imageView = sender.view as? UIImageView { } }
注意:您需要设置tag
与您的UITapGestureRecognizer
不在您UITapGestureRecognizer