美文网首页iOS Developer - CALayerCore Animation@IT·互联网
从零到一学习CALayer(二.创建CALayer)

从零到一学习CALayer(二.创建CALayer)

作者: mkb2 | 来源:发表于2016-08-21 11:44 被阅读306次

这个相对来说很简单,就是普通的使用

一.创建CALayer,并且使用它的部分属性
设置了背景图片
    override func viewDidLoad() {
        super.viewDidLoad()
        
        let layer = CALayer()
        layer.backgroundColor = UIColor.redColor().CGColor
        layer.cornerRadius = 34
        layer.frame = CGRectMake(134, 155, 90, 90)
        view.layer.addSublayer(layer)
    }

CALayer可以像UIView一样,创建,设置背景,圆角,以及frame,如果没有frame的话,是不现实的,也要使用addSublayer,有顺序的~,效果如上图

给layer设置了content属性
    override func viewDidLoad() {
        super.viewDidLoad()
        let diyLayer = CALayer()
        diyLayer.backgroundColor = UIColor.redColor().CGColor
        diyLayer.cornerRadius = 34
        diyLayer.frame = CGRectMake(134, 155, 90, 90)
        diyLayer.contents = UIImage.init(named: "content.png")?.CGImage
        view.layer .addSublayer(diyLayer)
    }

圆角哪去了?过去说过,我们设置了主layer--diyLayer的圆角,但是没有显示,是因为content属于次layer,在上边,如果想有裁剪,应当设置主layer的切图属性 diyLayer.masksToBounds = true

diyLayer.masksToBounds = true

疑惑
如果layerview的使用基本都一样,到底用哪个比较好?
效果基本一致,但是要看我们需要的功能,layer只有展示的功能,不能交互,少了事件处理的功能,但是他的性能更高,不要交互,选择layer~

二.point和anchorPoint(锚点)
point

这个大家都知道,在父控件中的位置。以父控件(0.0)点来判断的。

anchorPoint

1.定位点,锚点 :决定着CALayer的哪一个点在父控件的point位置上,默认是(0.5,0.5)
2.锚点的根据是以自己的(0.0)开始判断的
3.锚点的取值范围是(0,1)
4.锚点是相对于自己的layer的,point是相对于父控件的

layer中的锚点位置 红色layer在绿色view上的位置是由layer.point决定的,假设我们打算放到point(100,100)这个位置去 layer的锚点是(0,0) 锚点是(0.5,0.5) 锚点是(1,1) 锚点是(1,0.5)

锚点就是layer的那一个点在point上,这下子应该理解了是不

本文的demo地址

相关文章

  • 从零到一学习CALayer(二.创建CALayer)

    这个相对来说很简单,就是普通的使用 一.创建CALayer,并且使用它的部分属性 CALayer可以像UIView...

  • 从零到一学习CALayer(三.CALayer的隐式动画)

    1.每个UIView上都有一个自带的layer,我们称他们为root layer(根层) 2.所有的非根层都存在隐...

  • CALayer 简介

    CALayer1-简介CALayer2-创建新的层 CALayer3-层的属性 CALayer4-自定义层 CAL...

  • CALyer介绍

    CALayer1-简介CALayer2-创建新的层CALayer3-层的属性CALayer4-自定义层 注意点 第...

  • CALayer图层类

    //CALayer图层类 //和UIView用法类似 //创建图层类对象 // CALayer *layer = ...

  • 从零到一学习CALayer(一.基本使用)

    demo地址 1.UIView和CALayer 1.1 在iOS中看的见,摸得着的都是UIView,例如一个按钮,...

  • CALayer

    1、什么是CALayer? 在创建UIView对象时,UIView内部会自动创建一个层(即CALayer对象...

  • CAShapeLayer

    一、CAShapeLayer的介绍 CAShapeLayer继承与CALayer,CALayer在创建时需要赋给f...

  • UIView与CALayer

    UIView和CALayer是什么关系? 创建UIView对象时,UIView内部会自动创建一个层(CALayer...

  • 02.5-CALayer和CATransform3D

    一、CALayer 二、CATransform3D 三、UIView和CALayer的选择 四、CALayer的隐式动画

网友评论

    本文标题:从零到一学习CALayer(二.创建CALayer)

    本文链接:https://www.haomeiwen.com/subject/onzisttx.html