This worked for me. When initializing your UIView, add an instance variable 
"shapeLayer" and do this,

        shapeLayer = [CAShapeLayer layer];
        [[self layer] addSublayer:shapeLayer];


In drawRect, set up your path and do this,

    CABasicAnimation *pathAnimation = [CABasicAnimation 
animationWithKeyPath:@"strokeEnd"];
    pathAnimation.duration = 4.0;
    pathAnimation.fromValue = [NSNumber numberWithFloat:0.0f];
    pathAnimation.toValue = [NSNumber numberWithFloat:1.0f];
    [shapeLayer addAnimation:pathAnimation forKey:@"strokeEndAnimation"];



That seems to be all that is needed.

David




On Oct 23, 2012, at 11:37 AM, David Duncan <[email protected]> wrote:

> On Oct 23, 2012, at 4:37 AM, Roland King <[email protected]> wrote:
> 
>> I want to animate the drawing of  CGPath in a UIView, so it looks as if it's 
>> being drawn. I have the UIView, I have the CGPath, I am able to split the 
>> CGPath at any point from 0 to 100% into that which should be drawn and that 
>> which shouldn't yet, that's all done, so I can, fairly efficiently, call 
>> -(CGPath)[ myObject fractionalPath:(CGFloat)fraction ] and get a path. 
> 
> 
> You can do this with a CAShapeLayer by animating the strokeEnd property. 
> Should be very simple to do, although if your path is very complex it may 
> make more sense to break it into pieces and use multiple shape layers 
> animated sequentially.
> --
> David Duncan
> 
> 
> _______________________________________________
> 
> Cocoa-dev mailing list ([email protected])
> 
> 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:
> https://lists.apple.com/mailman/options/cocoa-dev/rowlandd%40sbcglobal.net
> 
> This email sent to [email protected]

_______________________________________________

Cocoa-dev mailing list ([email protected])

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:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to