ParticlesLoadingView
描述
ParticlesLoadingView
允许您使用 Xcode 内置的 粒子发射器编辑器(如下图中所示)创建自己的惊人的 SpriteKit
粒子动画。请继续创建您自己的粒子动画,方法如下
使用方法
要查看其运行效果,请先克隆示例项目并从 Example
目录中运行 pod install
。示例项目展示了如何以几种不同的方式设置 ParticlesLoadingView
。
围绕任何 UIView
子类的边框添加粒子动画的最简单方法是使用以下扩展方法
let view = ... // Your UIView subclass here
view.addParticlesAnimation(effect: ParticleEffect.Fire) // Use a built-in effect
view.addParticlesAnimation(emitter: emitter) // Use your own SKEmitterNode
您还可以使用已经提供的 ParticlesLoadingView
类来创建一个动画。您可以按代码或从故事板中实例化它,并选择内置的 ParticleEffect
,或将 scene.emitterNode
设置为您的自定义 SKEmitterNode
对象。
var loadingView: ParticlesLoadingView = {
let view = ParticlesLoadingView(frame: 0, y: 0, width: 75, height: 75))
view.particleEffect = .Spark
view.duration = 1.5
view.layer.cornerRadius = 15.0
return view
}()
// OR provide your own SKEmitterNode
let emitter = NSKeyedUnarchiver.unarchiveObjectWithFile(NSBundle.mainBundle().pathForResource("Spark", ofType: "sks")!) as? SKEmitterNode
if let emitter = emitter {
loadingView.scene.emitterNode = emitter
loadingView.startAnimating()
}
自定义
/// Duration in seconds of the animation to complete a tour on the border of the view.
public var duration = 2.0
/// The size of each particle image. This value is used to calculate the inner padding of the view path so that the emitted particles are visible.
public var particlesSize: CGFloat = 5.0
/// The emitter of particles that is animated along the border of the view.
public var emitterNode: SKEmitterNode? = nil
您可以通过使用粒子发射器编辑器设计动画并创建一个 SKEmitterNode
来提供自己的粒子发射器节点。如果您想进一步自定义它,项目已经进行了说明,所以请
如果您认为该项目中应该包含某个功能,请提交一个PR或打开一个新问题。
安装
ParticlesLoadingView
通过 CocoaPods 提供。要安装它,只需在您的 Podfile
中添加以下行
pod "ParticlesLoadingView"
如果您更喜欢使用 Carthage,请将此行添加到您的 Cartfile
中。
github "BalestraPatrick/ParticlesLoadingView"
要求
需要 iOS 9.0 和 Swift 3。
如果您正在使用 Swift 4,请使用 swift4 分支。
如果您正在使用 Swift 2.3,请使用 swift2.3 分支。
作者
我是 Patrick Balestra。 邮件: [email protected] Twitter: @BalestraPatrick。
许可证
ParticlesLoadingView
在 MIT 许可证下提供。有关更多信息,请参阅 LICENSE 文件。