zoukankan      html  css  js  c++  java
  • iOS开发-CALayer

    一、CALayer 和 UIView

    Unix/Linux的接口设计有一句通用的格言“提供机制而不是策略”。区别对待机制(mechanism)和策略(policy)是Unix设计中的一大亮点。

    对比到iOS开发,UIView有着手势、block动画等等,CALayer专注于内容的显示和绘制;

    UIView随着版本的升级,经常发生改动,而CALayer很少变动。

    同时UIView对CALayer的属性和功能进行了封装,便于开发者上手。

    二、CALayer 介绍

    CALayer类管理基于图像的内容的显示与动画。Layer经常用于提供view的显示,但是也可以直接使用。layer主要任务是管理提供的可见内容,同时layer也有自身的可见属性,比如说背景颜色、边框、阴影等。除了管理可见内容,layer也有关于其内容的几何信息(如位置、大小、和变换),用来显示在屏幕。修改layer上面的属性,会产生隐式动画。

    如果layer是被view创建,那么layer的delegate就是view,不允许修改。

    三、CALayer的使用

    见参考。

    参考

    机制与策略 http://blog.chinaunix.net/uid-21736802-id-1817824.html

    为什么有CALayer http://www.cocoachina.com/ios/20150828/13257.html

    objc-layer http://objccn.io/issue-12-4/

    layer的详细教程 http://blog.csdn.net/maylorchao/article/details/42652161

  • 相关阅读:
    hihocoder 1038
    hihocoder 1039
    poj 2774
    bzoj 4690&&4602
    poj 2417
    STL
    poj 1026
    poj 1064
    poj 1861(prim)
    poj 1129
  • 原文地址:https://www.cnblogs.com/loying/p/5210841.html
Copyright © 2011-2022 走看看