我正在尝试填充我的表视图,但我的委托方法没有被调用。
我已将表格视图绑定到控制器。
我已经实现了协议和委托方法,如下所示。
class TrendsViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
@IBOutlet var listingTable: UITableView!
var items: [String] = ["We", "Heart", "Swift"]
override func viewDidLoad() {
super.viewDidLoad()
listingTable.registerClass(UITableViewCell.self, forCellReuseIdentifier: "cell")
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
println("Counting")
return self.items.count
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
println("Setting a cell")
var cell = self.listingTable.dequeueReusableCellWithIdentifier("cell") as UITableViewCell
cell.textLabel.text = self.items[indexPath.row]
return cell
}
当我渲染视图时,我得到以下输出。
Counting
Counting
这意味着计数至少有效,但为什么不调用单元格构造函数?我错过了什么?
答案 0 :(得分:0)
当UITableView
的高度或宽度为0时,它永远不会调用tableView(_:cellForRowAtIndexPath:)
委托方法。
您应该已经被Interface Builder警告过:
点击它,然后解决问题。