У меня небольшая проблема. У меня есть UILabel, который имеет UILongPressGestureRecognicer. Когда вызывается UILongPressGestureRecognizer, мое приложение должно переключаться на новое представление с помощью переворачиваемой анимации.
Это код, который я использовал для GestureRecognizer:
UILongPressGestureRecognizer *labelLongPressRecognizer;
labelLongPressRecognizer = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(LoadLabelSettings:)];
labelLongPressRecognizer.numberOfTouchesRequired = 1;
labelLongPressRecognizer.minimumPressDuration = 2.0;
[NewLabel addGestureRecognizer:labelLongPressRecognizer];
и это код для анимации переключения вида:
CGContextRef context = UIGraphicsGetCurrentContext();
[UIView beginAnimations:nil context:context];
[UIView setAnimationTransition: UIViewAnimationTransitionFlipFromRight forView:self.view cache:NO];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[UIView setAnimationDuration:1.0];
[self.view addSubview:LabelSettingsViewController.view];
[UIView commitAnimations];
if (self.interfaceOrientation == UIInterfaceOrientationLandscapeRight || self.interfaceOrientation == UIInterfaceOrientationLandscapeLeft) {
LabelSettingsViewController.view.frame = CGRectMake(0, 0, 480, 300);
}
Моя проблема в том, что когда я удерживаю UILabel, анимация переключателя начинается, но когда я отпускаю, анимация повторяется снова. Так что в основном анимация происходит дважды, и я хочу, чтобы она происходила только один раз.
Есть идеи?
Заранее спасибо:)