我正在创建一个应用程序,用户可以将图像(用户想要的数量)上传到画布上并对它们执行相同的手势 . 我写的功能只设法在最近创建的图像上执行手势而不是其他图像 . 有人可以给我一些关于如何解决这个问题的想法,以便我可以控制我选择的任何一个(通过点击它们)?

var tag = 1

func createImageOnCanvas(){

    let ratio = imageOnCanvas.size.width/imageOnCanvas.size.height
    if ratio > 1.0 {
        imageView = UIImageView(frame: CGRect(x: (scrollView.bounds.size.width-200)/2, y:(scrollView.bounds.size.height-100)/2, width: 200*ratio, height: 200))
    }else{
        imageView = UIImageView(frame: CGRect(x: (scrollView.bounds.size.width-200)/2, y:(scrollView.bounds.size.height-100)/2, width: 200, height: 200/ratio))
    }

    imageView.tag = tag
    tag += 1
    imageView.image = imageOnCanvas
    imageView.contentMode = .scaleAspectFill
    imageView.clipsToBounds = true
    scrollView.addSubview(imageView)
    imageViewArray.append(imageView)

    for i in imageViewArray{
        addImageInteraction(for: i)
    }
}



func addImageInteraction(for imageView: UIImageView){

    imageView.isUserInteractionEnabled = true

    let panRecognizer = UIPanGestureRecognizer(target: self, action: #selector(dragImage))
    imageView.addGestureRecognizer(panRecognizer)

    let pinchRecognizer = UIPinchGestureRecognizer(target: self, action: #selector(scaleImage))
    imageView.addGestureRecognizer(pinchRecognizer)

    let rotateRecognizer = UIRotationGestureRecognizer(target: self, action: #selector(rotateImage))
    imageView.addGestureRecognizer(rotateRecognizer)

    let tapRecognizer = UITapGestureRecognizer(target: self, action: #selector(tapImage))
    imageView.addGestureRecognizer(tapRecognizer)
    print(imageView.tag,"Tap Gesture add")
}

这是应用程序的样子 . 如您所见,创建了三个图像,但只能控制最顶层的图像 .