On May 31, 2010, at 2:24 PM, Rodolfo Niborski wrote:

> My problem is that at the end of the first animation, the "Hello" message 
> shows up in its initial position for a fraction of a second.
> I've tried to set the fillMode of the first animation to kCAFillModeForwards 
> with no effect.

What you want to do instead is set the transform of the layer rather than 
trying to modify the animation to stick around. The code would be something 
like this:

CABasicAnimation *rotation = [CABasicAnimation 
animationWithKeyPath:@"transform"];
rotation.valueFunction = [CAValueFunction functionWithName: 
kCAValueFunctionRotateZ];
// setup the rest of the animation as you did previously
layer.transform = CATransform3DMakeRotation(M_PI, 0, 0, 1);
[layer addAnimation:rotation forKey:@"transform"];

What this does is it creates a basic animation that does the rotation, and then 
overrides the implicit animation that is created when you assign the transform 
to the layer. In this example I use the CAValueFunction rather than the 
extended keypath as this is more efficient and much more predictable, but doing 
so requires 10.6.
--
David Duncan
Apple DTS Animation and Printing

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to