当前位置: 代码迷 >> Iphone >> 用UILabel实现文字滚动播发(跑马灯)效果
  详细解决方案

用UILabel实现文字滚动播发(跑马灯)效果

热度:191   发布时间:2016-04-25 05:30:47.0
用UILabel实现文字滚动播放(跑马灯)效果
- (void)viewDidLoad {    [super viewDidLoad];      //数据源    self.messageArray = [NSArray arrayWithObjects:                         @"1",                         @"2",                         @"3",                         nil];    self.msgCount = 0;//从第一条开始显示}
-(void)viewDidAppear:(BOOL)animated {    //播放第一条并加入Timer设定切换间隔时间    [self msgChange];    [NSTimer scheduledTimerWithTimeInterval:5.0f target:self selector:@selector(msgChange) userInfo:nil repeats:YES];}
- (void)msgChange {    if (self.msgCount < self.messageArray.count) {        self.scrollLabel.text = [self.messageArray objectAtIndex:self.msgCount];        self.msgCount++;    } else {        self.scrollLabel.text = @"no message";//此处删除可以改为循环滚动播放    }        [self.scrollLabel sizeToFit];    CGRect frame = self.scrollLabel.frame;    frame.origin.x = [UIScreen mainScreen].bounds.size.width;    self.scrollLabel.frame = frame;        [UIView beginAnimations:@"scrollLabelTest" context:NULL];    [UIView setAnimationDuration:5.0f];    [UIView setAnimationCurve:UIViewAnimationCurveLinear];    [UIView setAnimationDelegate:self];    [UIView setAnimationRepeatAutoreverses:NO];    [UIView setAnimationRepeatCount:0];        frame = self.scrollLabel.frame;    frame.origin.x = -frame.size.width;    self.scrollLabel.frame = frame;    [UIView commitAnimations];}