#####时钟实现 #####1.首先来看看总体效果 #####2.先来实现秒针的变化 #####2.1先来看效果图片 #####2.2添加UIimageView加载图片,然后添layer
-(void) setUpSecodLayer{
CALayer *layer=[CALayer layer];
CGFloat clockW=self.imageView.bounds.size.width;
layer.position=self.imageView.center;
layer.anchorPoint=CGPointMake(0.5, 1);
layer.bounds=CGRectMake(0, 0, 1,clockW*0.5-20);
layer.backgroundColor=[UIColor redColor].CGColor;
self.secondLayer=layer;
[self.view.layer addSublayer:layer];
}
#####2.3添加一个定时器,不停旋转
- (void)viewDidLoad {
[super viewDidLoad];
[self setUpSecodLayer];
//
[NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(timeChange) userInfo:nil repeats:YES];
}
-(void) timeChange{
//获取当前日历对象
NSCalendar *calendar=[NSCalendar currentCalendar];
//获取日期的组件:年月日时分秒
//components:需要获取的日期组件
//formDate:获取哪个日期的组件
NSDateComponents *cmp=[calendar components:NSCalendarUnitSecond |NSCalendarUnitMinute | NSCalendarUnitHour fromDate:[NSDate date]];
//获取秒
NSInteger second=cmp.second;
//获取分
// NSInteger minute=cmp.minute;
//获取小时
// NSInteger hour=cmp.hour;
//
// NSLog(@"%li",(long)second);
CGFloat secondAngle=(second*6)*(M_PI*2)/360;
self.secondLayer.transform=CATransform3DMakeRotation(secondAngle, 0, 0, 1);
}
#####3源代码详细地址