总接来说就是如下几点:

1:每个 UIView 内部都有一个 CALayer 在背后提供内容的绘制和显示,并且 UIView 的尺寸样式都由内部的 Layer 所提供。两者都有树状层级结构,layer 内部有 SubLayers,View 内部有 SubViews.但是 Layer 比 View 多了个AnchorPoint

2:在 View显示的时候,UIView 做为 Layer 的 CALayerDelegate,View 的显示内容由内部的 CALayer 的 display

3:CALayer 是默认修改属性支持隐式动画的,在给 UIView 的 Layer 做动画的时候,View 作为 Layer 的代理,Layer 通过 actionForLayer:forKey:向 View请求相应的 action(动画行为)

4:layer 内部维护着三分 layer tree,分别是 presentLayer Tree(动画树),modeLayer Tree(模型树), Render Tree (渲染树),在做 iOS动画的时候,我们修改动画的属性,在动画的其实是 Layer 的 presentLayer的属性值,而最终展示在界面上的其实是提供 View的modelLayer

5:两者最明显的区别是 View可以接受并处理事件,而 Layer 不可以

最新文章

  1. 《C专家编程》第三章——分析C语言的声明
  2. spring 异常记录
  3. HT for Web 3D游戏设计设计--汉诺塔(Towers of Hanoi)
  4. MSYS2 安装和配置
  5. 【Bootstrap3.0建站笔记二】button可下拉弹出层
  6. hdu1243(最长公共子序列变形)
  7. SmartCoder每日站立会议 01
  8. mysql 批量插入优化之rewriteBatchedStatements
  9. 使用JSONP进行跨域Ajax 调用
  10. ubuntu自动登录tty1(shell,text)配置
  11. iTOP-4418开发板支持Android4.4/5.1.1系统、Linux3.4.39、QT2.2/4.7/5.7、Ubuntu12.04
  12. UOJ#7. 【NOI2014】购票 点分治 斜率优化 凸包 二分
  13. C/C++的20个位运算技巧
  14. Linux 防火墙iptables开放端口
  15. c# 静态构造函数与构造函数的调用先后
  16. (网页)习惯了CS回车操作人员,操作BS网页表单也是回车666
  17. 【jvm】windows下查看java进程下多线程的相关信息
  18. mysql学习之路_基础知识
  19. The 10 Best Neighborhoods in Seattle
  20. [C++] 用Xcode来写C++程序[2] 操作变量

热门文章

  1. Mybatis mapper动态代理的原理详解
  2. Node.js中的自定义模块化
  3. web 前端开发学习路线
  4. Spring源码剖析4:其余方式获取Bean的过程分析
  5. .NET Core 单元测试
  6. Docker跨服务器通信Overlay解决方案(下) Consul集群
  7. c#滑窗缓存
  8. Python Web Flask源码解读(一)——启动流程
  9. CodeForces 989C
  10. css_transition_animation(内含贝赛尔曲线详解)