swift-自定义cell和使用xibCell创建tableview

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")

demo下载

你可能感兴趣的:(swift-自定义cell和使用xibCell创建tableview)