Swift and swiftcode
Swift-UITableView status switch Effect
Effect
Source code
Https://github.com/YouXianMing/Swift-Animations
/// TableViewTapAnimationController. swift // Swift-Animations // Created by YouXianMing on 16/8/7. // Copyright©2016 YouXianMing. All rights reserved. // import UIKitclass TableViewTapAnimationController: NormalTitleViewController, UITableViewDelegate, UITableViewDataSource {var adapters: NSMutableArray! Var tableView: UITableView! Override func setup () {super. setup () // TableView. tableView = UITableView (frame: (contentView ?. Bounds )!) TableView. dataSource = self tableView. delegate = self tableView. separatorStyle =. None contentView ?. AddSubview (tableView !) // Register cell. tableViewTapAnimationCell. registerToTableView (tableView, cellReuseIdentifier: nil) // Data source. adapters = NSMutableArray () adapters. addObject (TableViewTapAnimationCell. dataAdapterWithData (TapAnimationModel (name: "YouXianMing", selected: false), cellHeight: 80) adapters. addObject (TableViewTapAnimationCell. dataAdapterWithData (TapAnimationModel (name: "Animations", selected: fal Se), cellHeight: 80) adapters. addObject (TableViewTapAnimationCell. dataAdapterWithData (TapAnimationModel (name: "YoCelsius", selected: false), cellHeight: 80) adapters. addObject (TableViewTapAnimationCell. dataAdapterWithData (TapAnimationModel (name: "iOS-Progrommer", selected: false), cellHeight: 80) adapters. addObject (TableViewTapAnimationCell. dataAdapterWithData (TapAnimationModel (name: "Design-Pa Tterns ", selected: false), cellHeight: 80) adapters. addObject (TableViewTapAnimationCell. dataAdapterWithData (TapAnimationModel (name: "Arabia-Terra", selected: false), cellHeight: 80) adapters. addObject (TableViewTapAnimationCell. dataAdapterWithData (TapAnimationModel (name: "Swift", selected: false), cellHeight: 80)} // MARK: UITableView's delegate & dataSource. func tableView (tableView: UITableVi Ew, numberOfRowsInSection section: Int)-> Int {return adapters. count} func tableView (tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath)-> UITableViewCell {return tableView. dequeueAndLoadContentReusableCellFromAdapter (adapters [indexPath. row]! CellDataAdapter, indexPath: indexPath)} func tableView (tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {tableView. selectedEventWithIndexPath (indexPath)} func tableView (tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath)-> CGFloat {return (adapters [indexPath. row]! CellDataAdapter). cellHeight! }}