SKInnerShadowLayer 1.1

SKInnerShadowLayer 1.1

测试已测试
Lang语言 Obj-CObjective C
许可证 MIT
发布最后一次发布2014年12月

Soroush Khanlou 维护。



  • Soroush Khanlou

SKInnerShadowLayer 是一个 CAGradientLayer 子类,它为给定层添加了创建内部阴影的属性。

使用方法

SKInnerShadowLayer 采用了 CAGradientLayer 的图形属性,允许您设置层阴影、渐变和边框,并添加了四个属性,以控制层的内部阴影外观。

这些属性包括

@property CGColorRef innerShadowColor;
@property CGSize innerShadowOffset;
@property CGFloat innerShadowRadius;
@property CGFloat innerShadowOpacity;

它们的行为类似于其下落阴影对应物。

技术

绘制内部阴影的技术非常简单。层

  1. 创建了一个层的圆角矩形路径
  2. 裁剪到这个圆角矩形
  3. 在圆角矩形周围创建了一个更大的路径
  4. 设置了阴影属性
  5. 在这个形状的后面绘制了阴影

这就产生了内部阴影的错觉。

动画

所有这些属性都是完全可动画化的。在演示应用程序中有一个关于层内部阴影不透明度动画的示例。能够轻松创建动画是使用 CoreGraphics 绘制内部阴影而不是使用图像资源的直接优势。