CocoaPods trunk is moving to be read-only. Read more on the blog, there are 18 months to go.

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)