首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使UIImageView中的图像变化具有动画效果?

如何使UIImageView中的图像变化具有动画效果?
EN

Stack Overflow用户
提问于 2010-05-14 21:45:04
回答 8查看 143.7K关注 0票数 217

我有一个带有图像的UIImageView。现在我有了一个全新的图像(图形文件),并希望在此UIImageView中显示它。如果我只是设置

代码语言:javascript
复制
myImageView.image = newImage;

新图像立即可见。不可设置动画。

我希望它能很好地淡出到新的图像中。我想也许有一个更好的解决方案,而不是仅仅在上面创建一个新的UIImageView并与动画混合?

EN

回答 8

Stack Overflow用户

回答已采纳

发布于 2010-05-14 22:02:40

我不确定你是否可以使用淡入淡出效果来动画UIViews,因为似乎所有支持的视图过渡都是在UIViewAnimationTransition枚举中定义的。使用CoreAnimation可以实现淡入淡出效果。此方法的示例:

代码语言:javascript
复制
#import <QuartzCore/QuartzCore.h>
...
imageView.image = [UIImage imageNamed:(i % 2) ? @"3.jpg" : @"4.jpg"];

CATransition *transition = [CATransition animation];
transition.duration = 1.0f;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type = kCATransitionFade;

[imageView.layer addAnimation:transition forKey:nil];
票数 262
EN

Stack Overflow用户

发布于 2012-10-08 17:29:50

代码语言:javascript
复制
[UIView transitionWithView:textFieldimageView
                  duration:0.2f
                   options:UIViewAnimationOptionTransitionCrossDissolve
                animations:^{
                    imageView.image = newImage;
                } completion:nil];

是另一种可能性

票数 377
EN

Stack Overflow用户

发布于 2013-12-02 01:58:33

试试这个:

代码语言:javascript
复制
_imageView.image = image;
[_imageView.layer addAnimation:[CATransition animation] forKey:kCATransition];
票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2834573

复制
相关文章

相似问题

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