animateWithDuration动画循环AnimationRepeatCount

老规矩先放一张美图吧。

43.jpg

iOS中使用简单动画循环其中有两种方式

1.使用animation中自带的AnimationRepeatCount ,可以通过设置这个值,使动画能循环运行多少次,如果要设置为一直无限循环,可以设置为MAXFLOAT,参考代码如下:
[UIView animateWithDuration:1.0f delay:0 options:UIViewAnimationOptionCurveLinear animations:^{
    [UIView setAnimationRepeatCount:MAXFLOAT];
    _bottomConstraint.constant = 300;
    [self.view layoutIfNeeded];
} completion:^(BOOL finished) {
    _bottomConstraint.constant = 0;
    [self.view layoutIfNeeded];
}];

需要注意的地方为:
1.1动画代码如果想要在页面开始的时候就运行一定不要放到viewDidLoad中,一定要放到viewDidAppear或者viewWillAppear中,否则只显示动画的最终完成的效果
1.2动画代码中 [UIView setAnimationRepeatCount:MAXFLOAT]这一段代码一定要放到所有效果代码之前,否则动画无法循环


2.可以采用定时器的方法做动画循环参考代码如下:
  NSTimer *splashTimer = nil;
 splashTimer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(anmimationView) userInfo:nil repeats:YES];

然后在放上动画代码:

_bottomConstraint.constant = 300;
[self.view layoutIfNeeded];
[UIView animateWithDuration:1.0f animations:^{
    UIView.animationRepeatCount  = 9999;
    _bottomConstraint.constant =0;
    [self.view layoutIfNeeded];
}];

这样就能实现动画的循环了。


在iOS开发中经常会遇到各种各样的坑,慢慢积累,大师之路就在脚下。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,257评论 4 61
  • 在iOS实际开发中常用的动画无非是以下四种:UIView动画,核心动画,帧动画,自定义转场动画。 1.UIView...
    请叫我周小帅阅读 3,169评论 1 23
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌。在这里你可以看...
    F麦子阅读 5,147评论 5 13
  • 你会怎么做呢?当你有极度想做成的事时,你会去立刻做,还是等等呢?我是会立刻执行的。 我在八月初,抽出大量时间看网易...
    皇氏三墳阅读 164评论 0 0
  • 下雪了,这个冬天我在异乡的第一场雪。特别想和你说说话聊聊天。知道你那里还温暖,想告诉你北国的冰寒。哪怕,哪怕你只和...
    Ushuaia1850阅读 620评论 0 0