首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何让文本淡入UILabel?

如何让文本淡入UILabel?
EN

Stack Overflow用户
提问于 2013-06-28 14:19:12
回答 6查看 14.1K关注 0票数 11

现在,我有一个按钮的IBAction,它生成一个随机数,每个数字都分配给在UILabel中显示文本。而不是仅仅出现,我希望文本淡入或任何其他有趣的动画将是很酷的。有谁知道一种简单的方法来实现这一点吗?

现在我只是使用

代码语言:javascript
复制
labelMain.text = @"my text";
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2013-06-28 14:23:23

下面的代码会给你的标签带来淡入淡出的效果。

代码语言:javascript
复制
 - (IBAction)buttonClicked:(UIButton *)sender
  {
    labelMain.alpha = 0;

    [UIView animateWithDuration:0.5 delay:0 options:UIViewAnimationOptionCurveEaseIn
    animations:^{ labelMain.alpha = 1;}
    completion:nil];
 }
票数 28
EN

Stack Overflow用户

发布于 2014-06-06 05:53:09

我知道这有点过时(11个月前),但我认为值得一提的是其他方法的替代方案,我觉得这是一个更好的解决方案。

使用UIView transitionWithView:duration:options:animations:completion类级方法,如下所示:

代码语言:javascript
复制
NSTimeInterval duration = 0.5f;
[UIView transitionWithView:labelMain
                  duration:duration
                   options:UIViewAnimationOptionTransitionCrossDissolve
                animations:^{
                  labelMain.text = @"new value";
                } completion:nil];

这将从先前的labelMain.text值交叉淡入淡出为“新值”。

这种方法也适用于其他视图值,例如,更改UIImageView的图像。

有关此主题,请参阅Apple's docs

票数 31
EN

Stack Overflow用户

发布于 2013-06-28 14:26:26

代码语言:javascript
复制
label.text = @"old text";
    [UIView animateWithDuration:0.4 animations:^{
        label.alpha = 0.0f;
    } completion:^(BOOL finished) {
        label.text = @"next text";
        [UIView animateWithDuration:0.4 animations:^{
            label.alpha = 1.0f;
        } completion:^(BOOL finished) {
            NSLog(@"finished transition");
        }];
    }];
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17358417

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档