CALayer的认识

CALayer的认识框架

1.iOS中全部看得见的控件都须要UIView 包括UIwindow也是一个特殊的UIView性能

 

2.UIview对象在建立的时候  UIView内部回会去自动建立一个图层 CALayer对象 动画

举个例子 就是能够经过UIview的layer属性去访问他spa

3.UIview的现实过程对象

UIview须要显示在屏幕上的时候 会调用drawRect方法进行绘图  而且将所绘制的内容放在本身的图层上面,绘图完毕后,系统会讲图层拷贝到屏幕上  完成屏幕显示 继承

     UIview自己不能显示  是calayer完成的显示事件

 

4 ,举个例子 开发过程当中 能够经过CALyaer对象去 很方便的调整UIView的外观属性开发

     圆角  影音 边框 contents须要强转维CGImage   还能够添加一些自定义的动画it

 

5.自定义layer   能够实现和UIview同样的展现效果 io

   咱们自定义CALayer   正常的View本身有一个的一个layer 属性

   咱们能够经过CALayer的类方法本身去自定义个  

设置了属性后 最后别忘了  [self.view.layer addSublayer:layer]

 

又一个细节点值得注意的是  若是一个控件 是另一个控件的子控件  那么控件中的layer也是另一个控件的子layer  最简单的例子就是截屏操做的时候 为何可以所有

 

6.CALyaer是QuarzCore框架中的   CGImageRef和CGCoreRef是定义在CoreGrapgics中的 

前面的两个都是跨平台的 

   UIColor和UIimage是定义在的 UIKit中的  专属于iOS的

   若是你能用UIColre和UIimage 

 

QuarzCore 不恩可以使用uUIColor和UIImage 只能使用CGColorRef和 CGImageRef

 

UIview比CALayer多了一个事件处理的功能    为何?????

  由于他是继承自那个  NSObject的   不是继承自UIResponder

  CALyaer的性能高一代呢    少了处理事件的处理

  通常的时候是用不着的

 

7.CALayer有两个属性      position和  anchorpoint(取值是0-1)

    anchorpoint决定了哪一个点移动到 (100,100)的位置  不是默认的 左上角 00到那个位子 

相关文章
相关标签/搜索