《幸运大转盘》有一句代码是这样的:
self.rotateView.transform = CGAffineTransformMakeRotation(-angle);
它出现在延迟派遣消息 dispatch_after 里面,然而你真的看懂它了吗?
本文将揭秘这句代码的真相!红字黄底标出!
#import "ViewController.h"
#import "ZHYView.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// 让控制器的view以拉伸的方式设置成图片
self.view.layer.contents = (__bridge id)([UIImage imageNamed:@"LuckyBackground"].CGImage);
// 创建转盘的对象
ZHYView *rotateView= [ZHYView rotateImage];
// 设置转盘在屏幕上居中显示
rotateView.center = self.view.center;
// 把装盘添加到控制器当中
[self.view addSubview:rotateView];
// 程序一运行就让锯齿图片旋转
[rotateView startRotate];
}
// 设置状态栏样式为白色字体,更好看一些
-(UIStatusBarStyle)preferredStatusBarStyle{
return UIStatusBarStyleLightContent;
}
@end
#import <UIKit/UIKit.h>
@interface CZView : UIView
+ (instancetype)rotateView;
- (void)startRotate;
@end
#import "ZHYView.h"
#define kButtonCount 12
@interface ZHYView () <UIAlertViewDelegate>
@property (weak, nonatomic) IBOutlet UIImageView *rotateView;
@property (nonatomic,weak) UIButton *lastButton;
@property (nonatomic,strong) CADisplayLink *link;
@end