一、接下来,我们来说这个,核心动画啊, 1.看一下我们的ppt啊, 核心动画,Core Animation,它是一组非常强大的动画处理的API, 就是说,你做动画啊,可以用这个核心动画, UIView,它也可以做动画,核心动画啊,它只不过更强大一些, 使用它,能够做出非常炫丽的动画效果, 往往呢,是事半功倍,也就是说,你写少量的代码,就能够实现非常强大的功能, Core Animation,它可以用在Mac OS,和,iOS上,也是一个跨平台的一个东西, Core Animation,的动画执行过程,都是在后台操作的,不会阻塞主线程, 这一看就是多线程讲的啊,这个东西, 我们说,线程,实际上,有主线程,还有,后台线程,我们说,这个核心动画,它执行的过程,都是在后台去操作的,不会阻塞主线程, 我们实际上,现在所接触到的所有的代码,都是写在主线程里边的, 给大家演示一个阻塞主线程的例子啊,打开我们之前的屏幕截图的案例, 好, 我现在截图呢,这样去截图啊,我现在点击这个按钮,执行一个截图的操作, 我把这个Button,先拖过来,拖过来以后,写一个clipView啊, 写这么一个方法, 在这个方法里边,写我们之前,在这个viewDidLoad里边,截图的这个代码, 好,我把这一段儿代码,command + X、 都移动到这个clipView:方法里边来,都移动到这个Button里边来, 然后呢,command + R,我们说,Button,在你点击的时候,上边的文字,会变的浅一些,然后,你撒手的时候,它还会弹上来,没错儿吧,然后呢,我们来看一下啊,一会儿呢,我要让它按下去的时候呢,它会上不来, 它得过一会儿,才会再上来, 我们说,截图啊,是一个耗时的操作,我们说,所有的东西,都是在一条线上,主线程,就是一条线,所有的东西,都是在一条线上执行的,我一点截图,我现在去执行截图的这一坨代码了,那么,你这个UI,你这个按钮,就不会再去更新,往上弹了,因为现在,阻塞住了, 然后呢,主线程,也叫做UI线程,所有更新UI的东西,都是在主线程进行的,这是一句话啊,也挺重要的, 这就是你在执行耗时操作的时候,没有给它开一个另外的线程啊,这是一个意思,这样,button就上不来了, 我们回过头来,再来说,总之,这句话,就是说,核心动画是在后台执行的,你不用去担心UI更新的问题, 要注意的是,Core Animation,它是直接作用在CALayer上的,并不是在UIView上的,我们添加动画的时候,是通过layer,去add一个animation的, 待会儿我们要去“点儿”layer啊,去添加某一个动画, 二、动画使用步骤 1.我们接着来说啊, 我们这个里边,先来看一幅图, 这一幅图,是我们CAAnimation, 我们说,核心动画,这个类,关键的类,叫做CAAnimation, 然后呢,它里边,又有一堆子类, 这个CAAnimation,它的等级,就相当于我们手势的那个UIGestureRecognizer, 然后,它下边,又有很多什么Tap啊、Swife啊、等等等等、 这个也是,CAAnimation,是它大的一个父类, 里边又分为,什么AnimationGroup啊、BasicAnimation、KeyFrameAnimation、等等一些类,