试图从尚未点击的UIImageView中检测“修饰”

时间:2014-10-08 10:50:56

标签: ios objective-c swift uiimageview

图像胜过千言万语:)

Click a button,show an imageview and then close the imageview by lifting the finger

场景如下:我想按UIButton,然后全屏显示UIImageView(我已经完成了!)。然后,我需要通过检测手指已从屏幕上抬起来隐藏图像视图。

我尝试过但未成功:

  1. 在图片视图中添加UITapGestureRecognizer并启用userInteractionEnabled

    let tap_to_close_ref = UITapGestureRecognizer(target: self, action: "tap_to_close:")
    
    tap_to_close_ref.numberOfTapsRequired = 1
    
    self.addGestureRecognizer(tap_to_close_ref)
    
  2. 问题是UIImageView无法识别水龙头,除非它已由图像本身启动。

    1. 我将UIImageView子类化并听取了touchesBegan事件,再次出现同样的问题。
    2. 有什么建议吗?

2 个答案:

答案 0 :(得分:1)

检查UIImageView userInteractionEnabled属性,默认设置为NO

编辑:

然后想到的简单解决方案是将UIImageView互动留给NO并跟踪底层按钮的触摸。

答案 1 :(得分:0)

我复制了你的代码并进行了一次小改动。删除":"在宣布行动结束时。

更改" tap_to_close:"到" tap_to_close"