手势UITapGestureRecognizer的tag

UITapGestureRecognizer是没有tag属性,但他有UIView的属性,我们可以通过给UIView添加tag属性,从而标记UITapGestureRecognizer。

 
UITapGestureRecognizer *singleTap =
        [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(whenClickImage:)];
        [_firstImage addGestureRecognizer:singleTap];
        UIView *singleTapView = [singleTap view];
        singleTapView.tag = 0;
        [singleTap release];
 
-(void)whenClickImage:(id)sender
{
    UITapGestureRecognizer *singleTap = (UITapGestureRecognizer *)sender;
    NSLog(@"%d",[singleTap view].tag]);
}
注:查看UIGestureRecognizer源码发现了问题,苹果已经给我们做了封装,获取他都父视图不是通过superview,而是在UIGestureRecognizer中声明了一个属性view,通过这个属性就可以获取它都父视图 
posted @ 2013-04-22 18:08  追风.扬  阅读(1851)  评论(0编辑  收藏  举报