Новинка для iPhone dev. У меня есть представление, которое содержит UIScrollView, который содержит UIImageView. Я добавил (двойной) распознаватель жестов при просмотре изображения, который открывает окно предупреждения. По какой-то причине, и я уверен, что я просто отсталый, он открывается 3 раза.Использование UITapGestureRecognizer
Вот мой код:
- (void)viewDidLoad {
scrollView.delegate = self;
UIImage* image = imageView.image;
imageView.bounds = CGRectMake(0, 0, image.size.width, image.size.height);
scrollView.contentSize = image.size;
UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTapGesture:)];
tapGesture.numberOfTapsRequired = 2;
[imageView addGestureRecognizer:tapGesture];
[tapGesture release];
NSLog(@"LOADED");
[super viewDidLoad];
}
-(IBAction) handleTapGesture:(UIGestureRecognizer *) sender {
CGPoint tapPoint = [sender locationInView:imageView];
int tapX = (int) tapPoint.x;
int tapY = (int) tapPoint.y;
NSLog(@"TAPPED X:%d Y:%d", tapX, tapY);
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Hello" message:@"How are you?" delegate:nil cancelButtonTitle:@"I'm awesome." otherButtonTitles:nil];
[alert show];
[alert release];
}
Я только начал iPhone устр несколько дней назад. Эта проблема напоминает мне о проблемах с пузырьками событий, с которыми я столкнулся в javascript. Есть идеи?
Да, и кажется, что стоит отметить, что NSLog не происходит все три раза. – tybro0103