【CALayer-时钟练习-旋转 Objective-C语言】
一、好,接下来呢,我们要让它旋转出来,
1.让它先旋转起来啊,这根秒针,让它先转着,
把之前的代码复制粘贴一份,改个名字,叫:07-时钟练习(旋转)
旋转的话,我现在应该让它,一秒钟,旋转一次,一秒钟,旋转一次,
那么,这个时候,我们应该怎么样去做,
我现在这个是一个秒针吗,我秒针肯定是一秒钟旋转一次,
那么,这个“一秒钟”,怎么办,
NSTimer,可以做,当然还有别的方法,我们先用NSTimer,来做,
2.在这个里边啊,我们直接在最后,写一个,
// 计时器
NSTimer,
NSTimer schedule
schedule一个时间,with一个target,
[NSTimer scheduledTimerWithTimeInterval:(NSTimeInterval) target:(id) selector:(SEL) userInfo:(id) repeats:(BOOL)];
输入5个参数:
1)第一个参数:scheduledTimerWithTimeInterval:(NSTimeInterval),来一个,1秒钟,写一个1,
2)第二个参数,target:(id):来一个,self,
3)第三个参数,selector:(SEL):来一个,@selector(timeChange),
4)第四个参数,userInfo:(id):来一个,nil,
5)第五个参数,repeats:(BOOL):来一个,YES,
一秒钟,执行一遍这个方法,把这个timeChange:方法,实现一下,
// 旋转(一秒一次)
- (void)timeChange{
}
3.接下来啊,我们一秒钟,应该转多少度,
2 * M_PI,除以,60,吧,
我们现在一圈儿是60秒,所以呢,二倍的派,整好是360度,然后呢,再除上一个60,就可以了,
// 一秒钟旋转的角度
CGFloat angle = 2 * M_PI / 60;
这是一秒钟转的角度,我现在已经知道了,
4.知道了以后呢,我们现在想让这个秒针,去进行旋转,
那么,我可以去改这个秒针的transform,
首先呢,我在这块儿啊,拿不到这个秒针,所以呢,我需要搞一个全局的东西出来啊,
@property(nonatomic,weak)CALayer *second;
self.second = second;
self.second.transform =
second,我们要让它的秒针旋转,我们要去改变它的transform,因为我们这个只是平面的旋转,所以,改变transform也行,
改变transform的这个Z轴,就是Rotate的Z轴,
<
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1716553.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!