CALayer

作者: 空城阿风 | 来源:发表于2016-09-26 15:12 被阅读15次

```CALayercontents```这类义有个一个属性contens,这个属性的类型被定义为id。在这种情况下你可以给他赋任何值 。但实践中 如果你给contens赋的不是CGimage ,那么你得到的图层将是空白的。

这是因为Mac OS的历史造成的 。在mac os开发中可以被赋值CGImage和NSImage类值。

实赋值类应该CGImageRef 他是一个指向CGimage结构的的指针.UIimage有一个CGimage属性,他返回"CGImageRef",这值赋值给CALayer的 contents。你将会编译错误。因为CGImageRef并不是一个真正的Cocoa对象,而是一个Core Foundation类型。

Core Foundation类和Cocoa对运时很想(toll-free bridging)他们并不是类型兼容的我们可以通过bridged键转换,给图层图赋值这可以这样转换

layer.contents= (__bridge id)image.CGImage;

相关文章

  • 动画 (1) ----- CALayer

    CALayer 和 UIView 联系CALayer的相关属性CALayer之隐式动画 一. CALayer 和 ...

  • CALayer与UIView的区别

    CALayer与UIView的区别 基础 CALayer的定义 CALayer的基础 CALayer和UIView...

  • UIView和CALayer

    1. UIView和CALayer CALayer负责显示内容contents UIView为CALayer提供现...

  • 设置view任意边框border

    CALayer *bottomBorder = [CALayer layer]; bottomBorder.f...

  • CALayer 简介

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

  • CALyer介绍

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

  • iOS-view圆角与阴影并存

    CALayer *subLayer = [CALayer layer];CGRect fixframe = vie...

  • CALayer(一)

    CALayer属性 view和layer的关系 CALayer属性表如下 CALayer和UIView的区别 1....

  • UIView和CALayer

    UIView和CALayer和有什么关系 UIview中有个属性layer,是CALayer类型。 CALayer...

  • 问题汇总

    1、UIView和CALayer区别UIView和CALayer的区别.UIView相对于CAlayer来说就多了...

网友评论

      本文标题:CALayer

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