2011-03-15 19 views
5

Hej, mam ten fragment kodu (czas trwania wynosi 0,5, ilość wynosi 1,5)Zatrzymaj CABasicAnimation od usuwane po zakończeniu

CABasicAnimation *grow = [CABasicAnimation animationWithKeyPath:@"transform"]; 
grow.duration = duration; 
grow.repeatCount = 0; 
grow.removedOnCompletion = NO; 
grow.autoreverses = NO; 
grow.fromValue = [NSValue valueWithCATransform3D:CATransform3DScale(self.layer.transform, 1.0, 1.0, 1.0)]; 
grow.toValue = [NSValue valueWithCATransform3D:CATransform3DScale(self.layer.transform, amount, amount, amount)]; 
grow.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]; 
[self.layer addAnimation:grow forKey:@"grow"]; 

Jednak gdy jest to zawodnik UIView rośnie prawidłowo, ale potem wskoczy z powrotem do jego wartość początkowa. Myślałem, że "removedOnCompletion" miał temu zapobiec?

Odpowiedz

16

Wygląda Musiałem także określać:

grow.fillMode = kCAFillModeForwards; 

Go figurę. Działa teraz :)

+1

Zaakceptuj swoją odpowiedź, aby poprawić ocenę akceptacji! –

+0

Ładna linia! dokładnie to, czego potrzebowałem! –

Powiązane problemy