tableview的简单使用
1.创建tableview
var tablview : UITableView? = nil
self.tablview = UITableView(frame: CGRect(x: 0, y: 0, width: kScreenWidth, height: kScreenHeight-64), style: UITableViewStyle.plain)
self.tablview?.delegate = self as UITableViewDelegate
self.tablview?.dataSource = self
self.tablview?.tableFooterView = UIView()
self.tablview?.separatorStyle = UITableViewCellSeparatorStyle.none
self.view.addSubview(self.tablview!)
2.声明代理
class BaseViewController: UIViewController,UITableViewDelegate,UITableViewDataSource
这个用法和OC中略有不同,直接在class后面添加就行
3.常用的taleview方法
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 3
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell : UITableViewCell = UITableViewCell(style: UITableViewCellStyle.`default`, reuseIdentifier: "cell")
cell.textLabel?.text = "呵呵"
cell.selectionStyle = UITableViewCellSelectionStyle.none
return cell
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return 80.0
}
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let headView = UIView.init(frame: CGRect(x: 0, y: 0, width: kScreenWidth, height: 40.0))
headView.backgroundColor = UIColor.init(red: CGFloat(arc4random()%255)/255.0, green: CGFloat(arc4random()%255)/255.0, blue: CGFloat(arc4random()%255)/255.0, alpha: 1)
return headView
}
func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return 40.0
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
print(indexPath.row)
}
4.
tableview加载纯代码创建的cell
self.tablview?.register(CellTableViewCell.self, forCellReuseIdentifier:"cell")
tableview加载xib创建的cell
self.tablview?.register(UINib(nibName: "TestTableViewCell",bundle: nil), forCellReuseIdentifier: "TestTableViewCell")