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

来源:互联网 时间:1970-01-01


- (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];}

 



相关阅读:
Top