Iphone 如何在objective C中设置UILabel动画

Iphone 如何在objective C中设置UILabel动画,iphone,ios,objective-c,uilabel,Iphone,Ios,Objective C,Uilabel,我想以新闻阅读的形式制作UILabel的动画…例如:-你好吗是我的UILabel。我希望它向左移动,并在最后一个单词完全向左移动后循环。 如果有人能帮我 谢谢到目前为止你都试了些什么 看看的动画方法,例如animateWithDuration:animations:completion:。可以为视图的帧设置动画,并使用完成处理程序调用另一种方法将视图移回 本质上,可以将animate方法视为一种方式,将完成处理程序视为另一种方式。在计时器/循环中调用整个过程,您将让它不断地来回运行 [UIVie

我想以新闻阅读的形式制作UILabel的动画…例如:-你好吗是我的UILabel。我希望它向左移动,并在最后一个单词完全向左移动后循环。 如果有人能帮我


谢谢

到目前为止你都试了些什么

看看的动画方法,例如
animateWithDuration:animations:completion:
。可以为视图的
帧设置动画,并使用完成处理程序调用另一种方法将视图移回

本质上,可以将
animate
方法视为一种方式,将完成处理程序视为另一种方式。在计时器/循环中调用整个过程,您将让它不断地来回运行

[UIView animateWithDuration:0.3 animations:^{
    label.frame = frame;
}];

“框架”应为标签的新框架。您可以使用此方法在所有UIKit视图上设置更改的动画。

在提问之前,请先做一些基础工作

无论如何,有两种常见的方法来实现这一点

  • 使用动画WithDuration:animations:completion:,通过在动画:块中设置目标帧,将标签添加到视图中,并在一段时间内设置动画。例如:

    //set initial frame for the label and add to the self.view
    [UIView animateWithDuration:/*animation duration*/ animations:^{
        //set destination frame of the label, only change x-axis value
    } completion:^(BOOL finished) {
    
    }];
    
  • 或者,如果需要此动画的连续循环,可以使用NSTimer。例如:

    [NSTimer scheduledTimerWithTimeInterval:/*label_change_time*/ target:nil selector:@selector(moveLabelToLeft:) userInfo:nil repeats:YES];
    
moveLabelToLeft:设置x轴值在标签更改时间内的差值