iOS 实现转盘的效果

时间:2023-02-09 14:08:26

效果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 = ;
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:];
[UIView setAnimationDelegate:self];
_panImageView.animationRepeatCount = ;
// [UIView setAnimationDidStopSelector:@selector(startAnimation)];
self.angle += ;
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 == ) {
[self.timer invalidate];
} }
@end