TableFlip

A simpler way to do cool UITableView animations! (╯°□°)╯︵ ┻━┻

561
36
Swift

TableFlip

(╯°□°)╯︵ ┻━┻

┬──┬ ノ( ゜-゜ノ)


Pod Version
Swift Version
License MIT
Plaform

Animations are cool. UITableView isn’t. So why not make animating UITableView cool?


The entire API for TableFlip consists of an animation, and a call to animate. It’s as simple as that.
TableFlip takes the annoying nature of reloading UITableViews, maintaining state, and anminating, and minimizes it to two lines of code.
If you want to animate every cell consecutively, the code will look like this.
self.tableView.reloadData()
self.tableView.animate(animation: myCoolCellAnimation)
And if you want to animate the entire table view at once, the code will look like this:
self.tableView.reloadData()
self.tableView.animate(animation: myCoolTableAnimation)

Animations are completely customizable and configurable. TableFlip provides a few built-in defaults that work nicely out the box, if you don’t want to make your own.

Let’s look at some examples

Animating from the left with a nice staggered effect:

TableViewAnimation.Cell.left(duration: 0.5)

Pushing from the top can make a nice initial loading effect:

TableViewAnimation.Table.top(duration: 0.8)

A simple fade is always elegant:

TableViewAnimation.Cell.fade(duration: 1.0)

And you can make your own transform, as fun or weird as you want by using CGAffineTransform:

let degrees = sin(90.0 * CGFloat.pi/180.0)
let rotationTransform = CGAffineTransform(rotationAngle: degrees)
let flipTransform = CGAffineTransform(scaleX: -1, y: -1)
let customTransform = rotationTransform.concatenating(flipTransform)

let customAnimation = TableViewAnimation.Cell.custom(duration: 0.6, transform: customTransform, options: .curveEaseInOut)
                
self.tableView.animate(animation: customAnimation, completion: nil)

Requirements

  • iOS 8.0+
  • Xcode 10.0+
  • Swift 4.2

Installation

You can use CocoaPods to install TableFlip by adding it to your Podfile:

platform :ios, '8.0'
use_frameworks!

pod 'TableFlip'

Or install it manually by downloading UITableView+Animations.swift and dropping it in your project.

About me

Hi, I’m Joe everywhere on the web, but especially on Twitter.

License

See the license for more information about how you can use TableFlip.

P.S.

If all you liked was the kitty, that’s my baby Gif. Feel free to follow her on the Instagram.