2014-10-08 50 views
2

的图像一个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) 
    

的问题是,除非它已被图像本身发起的UIImageView不承认水龙头。

  1. 我分类了UIImageView并听取了touchesBegan事件,同样的问题再次出现。

有什么建议吗?

+0

显示的UIImageView在按钮的'touchDownInside'和海因在'touchUpInside'和'touchUpOutside' – 2014-10-08 11:14:37

+0

这只会是有效的,当一个抬起手指** **内该按钮,如果他滑动手指并将其抬起,则不是。 – abinop 2014-10-08 11:18:12

+0

只是一个想法:如何在UIImage上方的全屏透明视图并让该视图处理水龙头......? – zisoft 2014-10-08 11:19:57

回答

1

检查UIImageViewuserInteractionEnabled属性,其默认设置为NO

编辑:

然后想到的最简单的办法是离开UIImageView互动NO和跟踪潜在的按钮触摸。

+0

已经做到了,请参阅第1项 – abinop 2014-10-08 11:14:21

0

我复制了你的代码并做了一个小改动。在声明操作结束时删除“:”。

变“tap_to_close:”到“tap_to_close”