Swift开发之UITableView状态切换效果


效果

源码

https://github.com/YouXianMing/Swift-Animations

//
// TableViewTapAnimationController.swift
// Swift-Animations
//
// Created by YouXianMing on 16/8/7.
// Copyright © 2016年 YouXianMing. All rights reserved.
//
import UIKit
class 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: false), 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-Patterns", 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: UITableView, numberOfRowsInSection section: Int) -> Int {
  return adapters.count
 }
 func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
  return tableView.dequeueAndLoadContentReusableCellFromAdapter(adapters[indexPath.row] as! 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] as! CellDataAdapter).cellHeight!
 }
}

以上所述是小编给大家介绍的Swift开发之UITableView状态切换效果,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的,再此也非常感谢大家对phpstudy网站的支持!


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3