繁体   English   中英

在自定义UITableView中设置委托和数据源

[英]Setting delegate and datasource in custom UITableView

我正在尝试创建UITableView作为UIViewController的自定义子视图,但是数据未显示在表中。 我怀疑问题出在表的datasource和我的delegate没有设置。 如何链接它们? UITableViewDataSource似乎在UITableView类中不起作用?

的UIViewController

    let projectDeck = ProjectDeck()
    projectDeck.frame = CGRect(x: 0, y: statusBarHeight + 132, width: screenWidth, height: screenHeight - 132)
    self.view.addSubview(projectDeck)

UITableView的

class ProjectDeck: UITableView {

    var items = ["Test", "TestTest", "TestBestWestVest"]

    override func numberOfRows(inSection section: Int) -> Int {
        return items.count
    }

    override func cellForRow(at indexPath: IndexPath) -> UITableViewCell? {
        let cell = UITableViewCell()
        cell.textLabel?.text = items[indexPath.row]
        return cell
    }

}

在viewcontrloller中设置委托和数据源

即在viewcontroller

projectdesc.tableview.datasource = self
projectdesc.tableview.delegate = self

并在viewccontroller中实现像cellforRow这样的tableview方法

并确保您正确地将tableview作为子视图添加到viewcontroller中

您需要添加数据源和委托引用。

您可以从插座或情节提要中进行操作。

使用插座:

yourTableView.datasource = self
yourTableView. delegate = self

使用StoryBoard

ctrl将表视图拖动到第一个响应者旁边的viewcontroller上,然后单击数据源和委托。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM