Можно ли успешно оживить движущуюся UIButton?
Я пытаюсь анимировать кнопку, которая перемещается по экрану. В любой момент пользователь может нажать на кнопку. Но кнопка не реагирует на прикосновения. Я пробовал анимационный блок, но кнопка просто перемещается сразу к ее конечным координатам, в то время как кадр показывает анимацию (кнопка называется пузырем):
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:5.0];
CGAffineTransform newTransform = CGAffineTransformMakeScale(3, 3);
bubble.transform = CGAffineTransformTranslate(newTransform, 0, -460);
[UIView commitAnimations];
Затем я попробовал Core Animation с помощью некоторого примера кода (путь не важен, это всего лишь пример):
CGMutablePathRef thePath = CGPathCreateMutable();
CGPathMoveToPoint(thePath,NULL,15.0f,15.f);
CGPathAddCurveToPoint(thePath,NULL,
15.f,250.0f,
295.0f,250.0f,
295.0f,15.0f);
CAKeyframeAnimation *theAnimation=[CAKeyframeAnimation animationWithKeyPath:@"position"];
theAnimation.path=thePath;
CAAnimationGroup *theGroup = [CAAnimationGroup animation];
theGroup.animations=[NSArray arrayWithObject:theAnimation];
theGroup.timingFunction=[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseIn];
theGroup.duration=15.0;
CFRelease(thePath);
[bubble.layer addAnimation:theGroup forKey:@"animatePosition"];
Но кнопки по-прежнему не реагируют на прикосновения. Кстати, у меня есть несколько таких «пузырьковых» кнопок на экране одновременно, поэтому одновременное использование нескольких NSTimers не будет оптимальным.
Кто-нибудь может предложить другой подход? Должен ли я, возможно, анимировать UIImageViews и заставить их отвечать на прикосновения? Или у меня будет такая же проблема? Это озадачивало меня в течение нескольких дней, поэтому любая помощь очень ценится.
Спасибо :)
Майкл