Я сегодня играю с CABasicAnimation и CAAnimationGroup, и я уже влюблен в нее. У меня есть пара основных анимаций, в которых форма круга сжимается, а также уменьшена до округлой квадратной формы, как приложение «Голосовые заметки» в iOS 7.CABasicAnimation анимирует, но рама представлений не является постоянной
Ниже приведен код его.
CABasicAnimation *corner = [CABasicAnimation animationWithKeyPath:@"cornerRadius"];
corner.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionLinear];
corner.fromValue = [NSNumber numberWithFloat:recordingShape.layer.cornerRadius];
corner.toValue = [NSNumber numberWithFloat:30.0f];
corner.duration = 1.0;
//shrinking - scaling
CABasicAnimation* shrink = [CABasicAnimation animationWithKeyPath:@"transform.scale"];
shrink.toValue = [NSNumber numberWithDouble:0.5];
shrink.duration = 0.5;
// Two animations concurrently so set up CAAnimationGroup
CAAnimationGroup *group = [CAAnimationGroup animation];
[group setDuration:0.5];
[group setAnimations:[NSArray arrayWithObjects:shrink, corner, nil]];
// Animate the layer
[[recordingShape layer] addAnimation:group forKey:@"bounceAndFade"];
анимация происходит хорошо, как ожидалось, но после анимации он возвращается в исходное состояние, как круглый круг, кто-то может вести меня, как я могу оставаться кадр слоя?
Спасибо.