3

我想要实现TapGestureRecognizerselector,下面是我添加tapGestureRecognizer我imageView无法识别的选择发送到实例斯威夫特3

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标签]:unrecog识别的选择发送到实例0x6080001a7700'

回答

6

问题是与您的方法声明,并分配到tagUIGestureRecognizer的对象。像这样改变你的方法声明。

func assignImage(_ sender: UITapGestureRecognizer) 

或者

func assignImage(_ sender: UIGestureRecognizer) 

编辑:要与UITapGestureRecognizer访问ImageView的对象。

func assignImage(_ sender: UITapGestureRecognizer) { 
    if let imageView = sender.view as? UIImageView { 

    } 
} 

注:您需要设置tagimageView不跟你UITapGestureRecognizer

+0

我想传递的ImageView作为参数,以获取其标签 – aatalyk

+0

这不可能的,但你可以访问'的ImageView '使用sender.view作为对象? UIImageView'。你可以在代码中显示 –

+0

吗? – aatalyk

相关问题