Pulsar
Pulsar是一个通用解决方案,用于展示脉冲动画,类似于在Apple Maps中看到的。
由于在CALayer中实现,Pulsar与几乎任何可想象的UI控件兼容,因为每个UIView都由一个CALayer支持。
预览
特点
Pulsar包含一个在CALayer上的简单分类,利用构建者模式进行无障碍定制。
- 自定义自定义时长和重复计数。
- 自定义线宽。
- 自定义背景和/或边框颜色。 (可选)
- 自定义路径。 (可选)
- 为附加调用(可选)提供起始/停止块。
尽管所有这些属性都可以设置,但 none of them have to be set explicitly。
Pulsar将尝试自动找出最有可能的默认颜色和路径(根据宿主层属性推断,如边框颜色),除非通过其构建程序提供自定义属性。
有关更多信息,请参阅这些方法
class func defaultBackgroundColorsForLayer(layer: CALayer) -> [CGColor]
class func defaultBorderColorsForLayer(layer: CALayer) -> [CGColor]
class func defaultPathForLayer(layer: CALayer) -> CGPathRef
使用说明
要使用addPulse
方法,通过智能默认属性向某一层(如UIView层)添加(一次性)脉冲,请直接调用该方法。
layer.addPulse()
或者,如果您想自定义外观效果
layer.addPulse { builder in
builder.borderColors = [UIColor.redColor().CGColor]
builder.backgroundColors = []
}
要使脉冲重复显示指定次数,请在builder
上设置一个repeatCount
。
builder.repeatCount = 42 // or Int.max for infinity
安装
只需将“Pulsar/Classes/...”中的文件复制到您的项目中。
或者,您可以使用CocoaPods将Strong安装到项目中。只需在Podfile中添加它: pod 'Pulsar'
示例
Pulsar 包含一个演示应用,可快速了解一些可能的用例。
Swift
依赖项
无。
作者
文森特·艾舍(Vincent Esche) (@regexident)
许可
Pulsar 可在 修改后的 BSD-3 条款许可协议 下使用,并具有 归因要求。有关更多信息,请参阅 LICENSE
文件。