今天用到給手勢綁定tag,在網上搜了一些,但大多數都是下面這一種:
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]);
}
UIImageView *personImage = [[UIImageView alloc] init];
personImage.tag = 1; //在添加手勢的時候給他自身設置tag值
UITapGestureRecognizer *personImageTapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(personImageTapGestureRecognizer:)];
[personImage addGestureRecognizer:personImageTapGestureRecognizer];
- (void)personImageTapGestureRecognizer:(UITapGestureRecognizer *)gesture {
UITapGestureRecognizer *singleTap = (UITapGestureRecognizer *)sender;
NSLog(@"====%d",gesture.view.tag); //personImage的tag
}
其實給UITapGestureRecognizer是沒有tag屬性,但他有UIView的屬性,我們可以通過給UIView添加tag屬性,從而標記UITapGestureRecognizer。