PulsingHalo
PulsingHalo has been discontinued, and is no longer being maintained. Please check out Pulsator which is the new version of this written with Swift.
iOS component for creating a pulsing animation. It allows you to create halos.
Great For:
- Pulses of beacons (iBeacon)
- Map Annotations
Installation
CocoaPods
Add into your Podfile.
pod "PulsingHalo"
Then $ pod install
Carthage
Add into your Cartfile.
github "shu223/PulsingHalo"
Then $ carthage update
Manual
Add PulsingHaloLayer.h,m into your project.
How to use
Just initiate and add to your view layer.
Swift
let halo = PulsingHaloLayer()
halo.position = view.center
view.layer.addSublayer(halo)
halo.start()
Objective-C
PulsingHaloLayer *halo = [PulsingHaloLayer layer];
halo.position = self.view.center;
[self.view.layer addSublayer:halo];
[halo start];
Customizations
Number of Halos
Use haloLayerNumber
property.
halo.haloLayerNumber = 3;
radius
Use radius
property.
self.halo.radius = 240.0;
color
Use backgroundColor
property.
UIColor *color = [UIColor colorWithRed:0.7
green:0.9
blue:0.3
alpha:1.0];
self.halo.backgroundColor = color.CGColor;
animation duration
Use animationDuration
or pulseInterval
property.
animation repeat count
Initialize using initWithRepeatCount:
method, or set repeatCount
property. The default value is INFINITY
.
animation key values and times
Use properties fromValueForRadius
or keyTimeForHalfOpacity
.
enable/disable timing function for animation
Use property useTimingFunction
Demo
You can try to change the radius and color properties with demo app.
Special Thanks
Inspired by SVPulsingAnnotationView.
Author
Shuichi Tsutsumi
iOS freelancer in Japan. Welcome works from abroad!