This is an iOS component for creating a single pulsing animation. It's a clone from PulsingHalo - so basically all the credits go to @shu223.
I just needed the single pulse animation (left one of the image) and decided to port it to Swift with some minor changes of the interfaces.
- Add LFTPulseAnimation to your project.
- Init LFTPulseAnimation (e.g. with its custom constructor) and add it to the view
pulseEffect = LFTPulseAnimation(repeatCount: Float.infinity, radius:20, position:imageView.center)
view.layer.insertSublayer(self.pulseEffect, below: imageView.layer)
Use the radius property to set the max size of the pulse effect.
pulseEffect.radius = 60
This is is basically a subclass of CALayer so you can access the backgroundColor attribute of CALayer and set it like you are used to it.
Use self.animationDuration
to set the duration of one animation cycle. Use the self.pulseInterval
property to add an interval to the duration.
Initialize using LFTPulseAnimation(repeatCount: Float.infinity, radius:20, position:iv.center)
to set the repeat count or use the repeatCount
property
For more adjustment just look in the code, it's very easy to understand and should be seld documenting.
If someone is interested in porting the multiple pulse effect before I will do it just let me know or do a Pull Request ;)
Special thanks to @shu223 for PulsingHalo!