实现UIView的无限旋转动画(非CALayer动画)

简介:

实现UIView的无限旋转动画(非CALayer动画)

效果:

素材:

源码:

//
//  ViewController.m
//  Animation
//
//  Created by YouXianMing on 15/2/5.
//  Copyright (c) 2015年 YouXianMing. All rights reserved.
//

#import "ViewController.h"

@interface ViewController ()

@property (nonatomic, strong) UIImageView  *circleView;

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];

    self.view.backgroundColor = [UIColor blackColor];
    
    self.circleView                 = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
    self.circleView.image           = [UIImage imageNamed:@"bg"];
    self.circleView.center          = self.view.center;
    [self.view addSubview:self.circleView];
    
    [self rotateImageView];
}

- (void)rotateImageView {
    // 一秒钟旋转几圈
    CGFloat circleByOneSecond = 1.5f;
    
    // 执行动画
    [UIView animateWithDuration:1.f / circleByOneSecond
                          delay:0
                        options:UIViewAnimationOptionCurveLinear
                     animations:^{
        self.circleView.transform = CGAffineTransformRotate(self.circleView.transform, M_PI_2);
    }
                     completion:^(BOOL finished){
        [self rotateImageView];
    }];
}

@end

核心源码(递归调用):

 

目录
相关文章
|
数据库
解决mybatis-plus日期显示为null的问题
解决mybatis-plus日期显示为null的问题
解决mybatis-plus日期显示为null的问题
|
Java
Java文件操作
本文介绍了Java中`File`类的使用方法,包括构造方法、常见成员方法及其实现功能。`File`对象可以表示文件或文件夹,支持绝对路径和相对路径。构造方法有三种:基于完整路径、父级路径与子路径组合、`File`对象与字符串组合。成员方法涵盖判断类型、获取大小、获取路径、创建与删除文件/文件夹、获取文件列表、重命名等操作。文章通过示例代码详细展示了各个方法的应用场景及注意事项。
126 1
Java文件操作
|
11月前
|
缓存 关系型数据库 MySQL
MySQL 满足条件函数中使用查询最大值函数
MySQL 满足条件函数中使用查询最大值函数
328 1
|
10月前
|
人工智能 安全 大数据
最新!阿里云入选福布斯·出海全球化品牌Top30
最新!阿里云入选福布斯·出海全球化品牌Top30
283 8
|
iOS开发
iOS多线程之NSOperationQueue-依赖、并发数、优先级、自定义Operation等最全的使用总结
iOS多线程之NSOperationQueue-依赖、并发数、优先级、自定义Operation等最全的使用总结
744 0
|
运维 Cloud Native 数据库
开发人员必须知道的软件系统架构分类知识
日常工作中或者是看各种资料或阅读书籍时,大佬们关于软件架构的描述中经常会看到SaaS和云原生,微服务,事件驱动型这几种词汇,其实这几类架构描的角度是不一样的。
261 7
|
开发框架 算法 .NET
阿里云无影×贝锐向日葵:把你的电脑秒变高性能PC!
阿里云无影×贝锐向日葵:把你的电脑秒变高性能PC!
608 2
|
Java 数据库 Maven
MyBatisPlus-代码生成器原理及实现
MyBatisPlus-代码生成器原理及实现
276 0
|
JSON 数据格式 iOS开发
**iOS发JSON请求中字符串加转义,返回的JSON去转义
iOS中使用NSSerialization把对象转为JSON字符串后,多出来反斜杠的问题 http://segmentfault.com/q/1010000000576646 NSDictionary *dic = @{@"url": @"http://.
4749 0