Re: sync drawing an ever-increasing path
Re: sync drawing an ever-increasing path
- Subject: Re: sync drawing an ever-increasing path
- From: David Rowland <email@hidden>
- Date: Tue, 23 Oct 2012 12:34:57 -0700
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@hidden> wrote:
> On Oct 23, 2012, at 4:37 AM, Roland King <email@hidden> 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@hidden)
>
> 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:
>
> This email sent to email@hidden
_______________________________________________
Cocoa-dev mailing list (email@hidden)
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:
This email sent to email@hidden