CALayer 类的介绍(创建+属性)

原创 2016年03月26日 19:48:21

CALayer类,也就是图层layer,管理基于图片的内容,可以在内容中展示动画。CALayer本身也有一些可视化的属性,比如边界,背景色和阴影。CALayer也存储了在图层上的可视化内容(子视图)的初始值,包括他们的坐标,大小,变幻等等。layer遵守CAMediaTiming协议,管理动画的时间间隔,步长等等。

一个layer可以由view来创建,这种情况下,layer的代理就是创建它的view。对于自己创建的layer需要指定delegate和layoutManager。delegate用来提供内容。layoutManager用来管理子视图的布局。作为delegate的类需要遵守CALayerDelegate协议。

layer的子视图都应该添加到layer的contentView里面,不要直接添加到layer上。

CALayer对象的创建:

  • +layer和-init方法。都可以返回一个layer对象。

外观相关属性:

  • contentsGravity 枚举类型,就是重心,决定它子视图怎么分布的。
  • opacity 透明度 0.0-1.0之间
  • masksToBounds 布尔值,是否将用mask遮盖这个layer使他值显示bounds的范围。比如要实现view的圆角效果的时候,也要把这个设置为YES(默认是NO)。
  • mask 这个是一个可选的layer,它的alpha channel决定了contentView和背景的透明度。默认mask==nil。要指定一个mask,需要指明mask的大小和位置。尤其注意这个mask不允许拥有父layer,否则效果是不可预知的。
  • cornerRadius 是个浮点型的数,指明的是layer背景的四个角,画成圆角的半径。默认情况下,只有背景会按照这个角度来画成圆角,而不会影响layer的contents属性里面的图片的角。要把masksToBounds设置为YES,才会影响那些图片。
  • borderWidth、borderColor、backgroundColor、shadowOpacity(0.0-1.0)、shadowRadius(要模糊化的半径)、shadowOffset、shadowColor属性都是看名字就能猜到大概,不多说。
  • shadowPath,类型是CGPathRef,指的是阴影的轮廓。默认是nil,也就是系统默认的形状。如果指定了,就会根据上面指定的shadowOpacity、shadowRadius、shadowColor等参数来填充阴影。
  • allowsEdgeAntialiasing 是否允许平滑处理,如果允许的话会使用edgeAntialiasingMask属性的值来对边界进行平滑处理。它的值可以在Info.plist上设定,如果没有设定,则默认是不允许的。
  • zPosition,z坐标轴上的位置,z坐标轴方向和屏幕垂直。数值越大,离看屏幕的人越近。
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

CALayer 的属性介绍

02CALayer的基本属性01     1.注意CALayer是什么东西?         > CA就是CoreAnimation核心动画,它是同时支持 Mac OS 和 iOS 系统。 ...

CAlayer层的隐式动画属性

  • 2014年11月20日 10:58
  • 1.12MB
  • 下载

CALayer常用属性整理

CALayer常用属性整理 图层可以包含子图层。就像视图可以包含子视图,图层也可以有子图层,稍加利用就能打造漂亮的效果! 图层属性自带动画效果。修改图层属性时,存在默认的动画效果,你也可以自定义动画行...

CALayer 层的属性-3

转自  http://www.cnblogs.com/mjios/archive/2013/04/14/3020291.html 本文目录 一、隐式动画属性二、position...

初探CALayer属性

一直觉得一个view就一个layer 到今天才发现不是这样子的 其关系图如下 图片.png CALayer属性表如下 图片.png CALaye...

CALayer可动画属性

这些属性用于CAAnimation中的KeyPath设置.表一 CALayer中可以进行动画的属性列表以及它们的默认动画 Property Default animation anchorP...
  • showgp
  • showgp
  • 2016年09月02日 13:04
  • 250

CALayer扩展属性自定义CAAnimation动画

使用CA动画也有段时间了,相对都是比较基本的一些动画。使用的范围基本都是layer自己的animateble的属性。那对于CALayer子类扩展的属性该如何实现动画呢? 我想做一个圆形的进度条,通过C...

IOS-swift 动画04 CALayer属性动画

CALayer 属性动画 新建layer 集成自CALayer 并定义属性 通过修改属性进行动画的执行 这一块比较简单就直接上代码了 DMEO效果 // // DSProgressLaye...

记录几个 CALayer 的重要属性 (二)

记录几个 CALayer 的重要属性:有关阴影配置 shadowColor : 配置阴影颜色 @property CGColorRef shadowColor; /* The color of the...

CALayer的mask属性简介

mask就是PS中的遮罩; 遮罩层必须至少有两个图层,上面的一个图层为“遮罩层”,下面的称“被遮罩层”;这两个图层中只有相重叠的地方才会被显示。也就是说在遮罩层中有对象的地方就是“透明”的,可以...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:CALayer 类的介绍(创建+属性)
举报原因:
原因补充:

(最多只允许输入30个字)