2015-12-30 59 views
0

嗨,我没有卡来解决这个问题。开始了。TapGestureRecognizer不能快速开火

我有这五个ImageView的,这是第一次的ImageView的声明,但是基本上他们有相同的声明

@IBOutlet weak var first: UIImageView!{ 
     didSet{ 
      first.tag = 1 
      first.addGestureRecognizer(tapGesture()) 
     } 
    } 

,然后tapGesture()方法是这样的

private func tapGesture() -> UITapGestureRecognizer { 
    let tapGesture = UITapGestureRecognizer(target: self, action: Selector("iconTapped:")) 
    tapGesture.numberOfTapsRequired = 1 
    tapGesture.numberOfTouchesRequired = 1 
    return tapGesture 
} 

时的动作的ImageView点击调用iconTapped()方法,这是代码

func iconTapped(sender:UITapGestureRecognizer){ 
    if let tag = sender.view?.tag{ 
     processGesture(tag) 
    } 
} 

我已将所有图像视图userInteractionEnable设置为true但仍未开火。任何人都可以帮我吗?

一些因素可能会或可能不会帮忙,viewdidload里面我更新的约束和做一些动画的ImageView,但我想这么多事情之后,我不加入任何编程子视图

+0

尝试移动addGestureRecognizer到viewDidLoad中 – Darko

+0

@Darko我已经试过了,还我试图把所有的ImageView在阵列和做一个循环,然后添加手势,并设置userInteractionEnable为真还没有射击 – CaffeineShots

+0

我只是看着我的代码中,唯一的区别是 - 我不写Selector()。尝试删除,只留下“iconTapped:” – Darko

回答

1

,我看我的看法层次并找出其中我的UIImageView其余userInteractionEnable在故事板中设置为false(未选中)的父视图。

在这种情况下

的parentview是我的上海华盈,以固定的,我需要在viewDidLoad中()添加这个

self.view.userInteractionEnabled = true 

点击parentView在故事板和属性检查器检查用户交互启用。

ps。抱歉愚蠢的错误,但我会保持这个问题张贴可能有其他遇到同样的问题。