ios - 如何在 3 个值之间设置 uilabel 文本的动画

标签 ios objective-c animation uilabel

我想要的是在 3 个值之间重复设置 UILabel 文本的动画。我想设置的文本是“正在下载”、“正在下载..”、“正在下载...”,然后重复。通过这个动画,我想让我的用户知道下载正在完成并且应用程序没有堆叠。我用谷歌搜索了一段时间,但没有找到解决方案。

任何人都可以给我一些引用吗?提前致谢。

最佳答案

使用 NStimer 改变文本

.h文件中

@interface ViewController : UIViewController
{
    NSTimer * timer;
    UILabel * downloadingLbl;
}

.m文件中

- (void)viewDidLoad
{
    [super viewDidLoad];

    downloadingLbl.text = @"Downloading.";
    if (!timer) {
        timer = [NSTimer timerWithTimeInterval:0.5 target:self selector:@selector(onTick:) userInfo:nil repeats:YES];
    }
}

-(void)onTick:(NSTimer*)timer
{
    NSLog(@"Tick...");

    if ([downloadingLbl.text isEqualToString:@"Downloading."]) {
        downloadingLbl.text = @"Downloading..";
    } else if ([downloadingLbl.text isEqualToString:@"Downloading.."]) {
        downloadingLbl.text = @"Downloading...";
    } else if ([downloadingLbl.text isEqualToString:@"Downloading..."]) {
        downloadingLbl.text = @"Downloading.";
    }
}

当您的下载完成时,计时器将失效。

[timer invalidate];

关于ios - 如何在 3 个值之间设置 uilabel 文本的动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21036658/

相关文章:

ios - 我可以为我的 iOS 和 Web 应用程序使用相同的分支子域吗?

ios - 如何在 objective-c 中调用的方法中传递五个值

objective-c - 如何使用 NSWindowController 中的关闭按钮停止模式?

javascript - 动画不缓和

iphone - 有没有办法从 shouldAutorotateToInterfaceOrientation 跳过旋转动画?

ios - 如何在 Swift 3.0 中使用 CNContact 获取添加或编辑联系人的日期

ios - 在 IOS 中解析 Json 响应时出现 valueNotFound 错误

objective-c - iOS 6 无需用户交互即可发送电子邮件

iphone - AVAudioPlayer 中的快退和快进

android - fade_out,插值器使应用程序崩溃