PIRipple 1.1.0

PIRipple 1.1.0

TestsTested
LangLanguage SwiftSwift
License MIT
ReleasedLast Release Aug 2015
SPMSupports SPM

Maintained by pixelink.



PIRipple 1.1.0

PIRipple

Ripple Effect for iOS (swift)


demo

demo

  • if try this demo. git clone / download and open project, and run.


install

  • manually
    • add PIRipple.swift into your project

  • cocoapods
    • add “ pod ‘PIRipple’, '1.1.0’ ” into your Podfile
    • add “ import PIRipple ” into your code

basic usage

uiview extention

UIView.rippleBorder(CGPoint, color: UIColor)
UIView.rippleFill(CGPoint, color: UIColor)

“CGPoint” means location in view

  • example
override func touchesBegan(touches: Set<NSObject>, withEvent event: UIEvent) {
  super.touchesBegan(touches, withEvent: event)
  for touch: AnyObject in touches {
    var t: UITouch = touch as! UITouch
    let location = t.locationInView(self)

    rippleBorder(location, color: UIColor.whiteColor())

  }
}
  • run your code after animation
rippleBorder(location, color: UIColor.whiteColor()) {
  println("animation completed")
  // your code
}

class method

Ripple.border(view:UIView, locationInView or absolutePosition:CGPoint, color:UIColor)

Ripple.fill(view:UIView, locationInView or absolutePosition:CGPoint, color:UIColor)
  • locationInView

    • CGPointZero is top & left in UIView.

  • absolutePosition

    • CGPointZero is top & left in UIWindow.

  • example

Ripple.border(self.view, locationInView:CGPointZero, color:UIColor.whiteColor())

  • run your code after animation
Ripple.border(tagetView, locationInView:CGPointZero, color: UIColor.whiteColor()) {
  println("animation completed")
  // your code
}

advanced usage

  • your config animation
var option = Ripple.option()
//configure
option.borderWidth = CGFloat(5.0)
option.radius = CGFloat(30.0)
option.duration = CFTimeInterval(0.4)
option.borderColor = UIColor.whiteColor()
option.fillColor = UIColor.clearColor()
option.scale = CGFloat(3.0)

Ripple.run(self, locationInView: CGPointZero, option: option){
  println("animation completed")
}

  • cancel animation
UIView.rippleStop()
Ripple.stop(self.view)