swift TableView委托和数据源类示例
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swift TableView委托和数据源类示例相关的知识,希望对你有一定的参考价值。
import Foundation
import UIKit
class TableViewController : UIViewController, UITableViewDelegate, UITableViewDataSource
{
var CLASS_TAG="TableViewController"
@IBOutlet weak var tableView: UITableView!
var exercises: NSMutableArray = []
override func viewDidLoad()
{
super.viewDidLoad()
NSLog(CLASS_TAG+": viewDidLoad()")
self.tableView.delegate=self
self.tableView.dataSource = self
}
func numberOfSectionsInTableView(tableView: UITableView) -> Int
{
return 1
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int
{
NSLog("Count: "+String(exercises.count))
return exercises.count
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
{
NSLog("Table entry")
let cell = self.tableView.dequeueReusableCellWithIdentifier("ExerciseCell", forIndexPath: indexPath) as! ExerciseCell
let row = indexPath.row
let entry = exercises.objectAtIndex(row) as! Exercise
NSLog(entry.getName())
cell.tvExercise.text = entry.getName()
cell.tvInfo.text=String(entry.getSeries())+" sets - "+String(entry.getTime())+" seconds"
return cell
}
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath)
{
NSLog("On click")
let exercise=exercises.objectAtIndex(indexPath.row) as! Exercise
NSLog(exercise.getName())
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc = storyboard.instantiateViewControllerWithIdentifier("ExerciseController") as! ExerciseController
vc.exercise=exercise
self.presentViewController(vc, animated: true, completion: nil)
}
}
/*
import Foundation
import UIKit
class ItemCell : UITableViewCell
{
@IBOutlet weak var tvItem: UILabel!
@IBOutlet weak var imgItem: UIImageView!
}
*/
以上是关于swift TableView委托和数据源类示例的主要内容,如果未能解决你的问题,请参考以下文章
Swift-使用委托在 tableView 上显示
如何使用不同的委托和数据源方法在一个类中实现两个Tableview?
Swift 4:没有调用 didSelectRowAt 委托
从 tableView 委托类中调用视图控制器 segue
在 tableview 上调用 selectRowAtIndexPath 时出现 Swift 错误
在swift中使用tableView自动填充代理方法的最佳方法?