我尝试将UITableView
创建为UIViewController
的自定义子视图,但数据未显示在表格中。我怀疑问题是我的delegate
和datasource
表没有设置。我该如何链接它们? 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
}
}
答案 0 :(得分:0)
在viewcontrloller中设置委托和数据源
即。在viewcontroller中
projectdesc.tableview.datasource = self
projectdesc.tableview.delegate = self
并在viewccontroller
中实现tableview的方法,如cellforRow并确保在viewcontroller中正确添加tableview作为子视图
答案 1 :(得分:0)
您需要添加数据源和委托引用。
您可以通过插座或故事板来实现。
使用奥特莱斯:
yourTableView.datasource = self
yourTableView. delegate = self
使用StoryBoard
ctrl-将表格视图拖动到第一响应者旁边的viewcontroller,然后单击datasource和delegate。