iOS简单的滚动label效果

滚动通知,最近有人跟我说滚动通知怎么设置都不成功,就是类似于跑马灯一样的效果,其实这是一个很简单的功能。我们就用UIView提供的一个动画效果就可以。

//MARK:加动画

- (void)addAnimation

{

//先去除rollLabel的全部动画

[self.rollLabel.layer removeAllAnimations];

CGRectframe = self.rollLabel.frame;

frame.origin.x=self.hornButton.frame.size.width;

self.rollLabel.frame= frame;

floatinterval = self.rollLabel.frame.size.width/35;

[UIView beginAnimations:@"Animation"context:NULL];

[UIView setAnimationDuration:interval];

[UIView setAnimationCurve:UIViewAnimationCurveLinear];

[UIView setAnimationDelegate:weakSelf];

[UIView setAnimationRepeatAutoreverses:NO];

[UIView setAnimationRepeatCount:9999999];

frame = self.rollLabel.frame;

frame.origin.x= - self.rollLabel.frame.size.width;

self.rollLabel.frame= frame;

[UIView commitAnimations];

}


iOS简单的滚动label效果_第1张图片
加动画

其中

计算动画duration

这一句是根据rollLabel的长度设置动画时长,所以如果rollLabel的内容很多也可以正常使用。

这里只是加动画的其中一部分,加动画之前要先根据内容长度设置好rollLabel的width。

你可能感兴趣的:(iOS简单的滚动label效果)