Swift Tableview 自定义带xib的cell

2020-04-02  本文已影响0人  林麟霖

这是XCode11 swift4 目前最简洁方便的用法

网上很多方法要自己填好xib的id、自己关联、还有复用问题等等很麻烦,其实都可以交给xcode处理

新建TableView Cell的时候记得选上xib

image.png

xib样式自己随便编辑

UIViewController里用法:

    @IBOutlet weak var subjectTable: UITableView!
    let subjectList:Array<String> = ["123","321","1234567"]
    
    override func viewDidLoad() {
        super.viewDidLoad()

        subjectTable.register(UINib(nibName: "SubjectSelectTableViewCell", bundle: nil), forCellReuseIdentifier: "subjectCell")
        subjectTable.delegate = self
        subjectTable.dataSource = self
    }

重点是

subjectTable.register(UINib(nibName: "SubjectSelectTableViewCell", bundle: nil), forCellReuseIdentifier: "subjectCell")

这里面 "SubjectSelectTableViewCell" 是你的cell类名 "subjectCell"是cellID可以随便写,和下面写的对应上就行,这是处理cell复用的。

cell内容填充:

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        
        let cell:SubjectSelectTableViewCell = tableView.dequeueReusableCell(withIdentifier: "subjectCell")
                    as! SubjectSelectTableViewCell
        
        let text = subjectList[indexPath.row]
        let label = cell.nameLabel
        cell.nameLabel.text = subjectList[indexPath.row]
        return cell
        
    }

这里的"subjectCell"和前面对应上

上一篇下一篇

猜你喜欢

热点阅读