In my IPhone application, I want the text in UILabel to glow for a second, then fade for a sec;. Also i want to repeat this cycle for say 3 or 4 times.
Is this possible?
In my IPhone application, I want the text in UILabel to glow for a second, then fade for a sec;. Also i want to repeat this cycle for say 3 or 4 times.
Is this possible?
As of 3.2 you there is direct support for shadows in the SDK.
label.layer.shadowColor = [label.textColor CGColor];
label.layer.shadowOffset = CGSizeMake(0.0, 0.0);
Play with the parameters:
label.layer.shadowRadius = 3.0;
label.layer.shadowOpacity = 0.5;
And to avoid shadow being clipped by the label bouds:
label.layer.masksToBounds = NO;
Don't forget to
#include <Quartzcore/Quartzcore.h>
and link against the QuartzCore or CoreGraphics frameworks (thanks to commenters for pointing this out).
For those of you using Swift 4, here's what I used for multiple objects to Glow the same color as they are:
let colorRed: UIColor? = timeLabel.textColor
timeLabel.layer.shadowColor = colorRed?.cgColor
timeLabel.layer.shadowRadius = 4.0
timeLabel.layer.shadowOpacity = 0.9
timeLabel.layer.shadowOffset = CGSize.zero
timeLabel.layer.masksToBounds = false
As for animating the glow, just add a timer for 3-4 loops and change .shadowOpacity to something lower.