Я почти уверен, что это довольно простой и понятный вопрос для всех, кто когда-либо пробовал это раньше, но я как бы новичок в том, что вы бы назвали "продвинутой" анимацией .
Я пытаюсь создать следующее движение объекта с помощью CAKeyframeAnimation (с ключевым путем «позиция»)
http://www.sumopaint.com/files/images800/aeegfexznpohlehd.jpg
Я пробовал задать путь с помощью UIBezierPath, но довольно быстро запутался и разочаровался, так как не нашел логики, стоящей за этим :)
Я хотел бы услышать, есть ли у вас мнение по этому поводу ...
Это мой базовый код (который также мог бы быть написан с нуля, если возникнет лучшая идея: P)
Также я хотел, чтобы объект постепенно исчезал по завершении. есть ли такой селектор, который работает после завершения анимации? (например, [UIView animateWithDuration])?
UIBezierPath *thumbPath = [UIBezierPath bezierPath];
[thumbPath moveToPoint: P(99,270)];
[thumbPath addCurveToPoint:P(164,260) controlPoint1:P(164,280) controlPoint2:P(164,280)];
[thumbPath addCurveToPoint:P(164,260) controlPoint1:P(260,310) controlPoint2:P(260,310)];
CAKeyframeAnimation *pathAnimation = [CAKeyframeAnimation animationWithKeyPath:@"position"];
pathAnimation.path = thumbPath.CGPath;
pathAnimation.duration = 2.0;