我在下面的代码中添加了几个视图:

    for var i=0;i<sets.count;i++ {
        setView=UIView(frame: CGRectMake(0,y,400,65))
        x=20

        for var c=0;c<sets[i].count;c++ {
            imageView=UIImageView(frame: CGRectMake(x,0,60,60))
            dieFaces=types[sets[i][c]] as! NSArray
            file="\(dieFaces![0]).png"
            print(file)
            imageView!.image=UIImage(named: file)
            setView!.addSubview(imageView!)
            x+=60
        }
        setView!.tag=i
        setView!.addGestureRecognizer(tap)
        scrollView.addSubview(setView!)
        y+=66
    }

只有最后添加的视图才对水龙头做出响应。我究竟做错了什么?

最佳答案

tap UITapGestureRecognizer只能附加到单个视图,因此只有最后一个视图在响应。
您需要为要附加到它的每个setView创建一个新的手势识别器。

关于ios - 点按手势仅响应上一次查看,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33764962/

10-11 20:01