你的位置:首页 > 操作系统

[操作系统]iOS 实现转盘的效果


效果

 

#import "ViewController.h"@interface ViewController ()@property (weak, nonatomic) IBOutlet UIImageView *panImageView;/** */@property(nonatomic,assign)int angle;/** 转盘时间 */@property(strong,nonatomic)NSTimer *timer;/** 计时器 */@property(strong,nonatomic)NSTimer *timeTick;/** 计时时间 */@property(nonatomic,assign)int timeNumber;@end@implementation ViewController- (void)viewDidLoad {  [super viewDidLoad];  self.timeNumber = 3;  self.timer = [NSTimer scheduledTimerWithTimeInterval:0.01 target:self selector:@selector(startAnimation) userInfo:nil repeats:YES];  self.timeTick = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(timeFireMethod) userInfo:nil repeats:YES];  }-(void)startAnimation{  [UIView beginAnimations:nil context:nil];  [UIView setAnimationDuration:1];  [UIView setAnimationDelegate:self];  _panImageView.animationRepeatCount = 1;//  [UIView setAnimationDidStopSelector:@selector(startAnimation)];  self.angle += 1000;  self.panImageView.layer.anchorPoint = CGPointMake(0.5,0.5);//以右下角为原点转,(0,0)是左上角转,(0.5,0,5)心中间转,其它以此类推  self.panImageView.transform = CGAffineTransformMakeRotation(self.angle * (M_PI / 180.0f));    [UIView commitAnimations];  }-(void)timeFireMethod{  self.timeNumber -- ;  if (self.timeNumber == 0) {    [self.timer invalidate];  }}@end