Latest 1.1.1
License MIT
Platforms ios 8.0


CocoaPods Compatible
Carthage compatible
codebeat badge

Whats inside

Custom animation for UIView inspired by Fabric – Answers animation.

PuzzleAnimation PuzzleAnimation PuzzleAnimation PuzzleAnimation

Easy to use

To create your first animation you need to know only about one method:

 Designated initializer for puzzle animation and it's subclasses

 - parameter viewToAnimate: view to render into pieces
 - parameter configuration: animation configuration

 - returns: newly created animation instance
init(viewToAnimate: UIView, configuration: PuzzleAnimationConfiguration = PuzzleAnimationConfiguration())

It’s flixible – you can configure almost any parameter for the animation:

 *  Defines the structure that contains configurable parameters for puzzle animation
struct PuzzleAnimationConfiguration {

  /// Defines the animation velocity. Higher velocity less animation duration
  var animationVelocity: NSTimeInterval = 1

  /// Defines the delay between each piece in piece's group animation
  var pieceAnimationDelay: PuzzleAnimationDelay = defaultForwardPieceAnimationDelay

  /// Defines the delay between each group of pieces animation
  var pieceGroupAnimationDelay: PuzzleAnimationDelay = defaultForwardPieceGroupAnimationDelay

  /// Defines the animation piece's scale
  var animationScale: Double = 2.5

  /// Each piece represents square and this value represents the number of pixels of square side
  var pieceSide: CGFloat = 40

Handle callbacks about status to start new animation or do something else:

/// Called when animation completed, stoped or failed
/// @note You can set it any time even during the animation
public var animationCompletion: PuzzleAnimationCompletion?

Intuitive and simple interface:

 Starts the animation. Makes view to animate hidden
public func start()

 Stops the animation. Removes all pieces from superview. Makes view to animate visible
public func stop()

For the complete example check the viewController.swift

Easy to install


To integrate ADPuzzleAnimation into your Xcode project using CocoaPods, specify it in your Podfile:

source ''
platform :ios, '8.0'

pod 'PuzzleAnimation', '~> 1.1.1'


To integrate ADPuzzleAnimation into your Xcode project using Carthage, specify it in your Cartfile:

github "Antondomashnev/ADPuzzleAnimation" ~> 1.1.1

Run carthage update to build the framework and drag the built ADPuzzleAnimation.framework into your Xcode project.

Latest podspec

    "name": "PuzzleAnimation",
    "version": "1.1.1",
    "summary": "Custom view animation",
    "description": "Inspired by Fabric - Answers animation. Allows to "build" given view with pieces. Allows to "destroy" given view into pieces.",
    "license": {
        "type": "MIT",
        "file": "LICENSE"
    "homepage": "",
    "authors": {
        "Anton Domashnev": "[email protected]"
    "source": {
        "git": "",
        "tag": "1.1.1"
    "platforms": {
        "ios": "8.0"
    "source_files": "Source/**/*.swift"

Pin It on Pinterest

Share This