下面是我的tableView的代码,在cellForRowAtIndexPath函数声明上有一个错误,说定义与先前的值冲突。先前的堆栈溢出问题具有使函数返回UITableViewCell作为可选值的解决方案,但这无法为我解决错误。我也有一个错误,说viewController不符合协议UITableViewDataSource,但是我认为这是由于cellForRowAtIndexPath方法上的错误。
我有一个适用于tableView的类似代码,但它写于大约一个月前,而我没有更新Xcode。也许最近的变化很快导致了错误?
func tableView(tableView: UITableView!, numberOfRowsInSection section: Int) -> Int
{
return 1
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell? {
let cellIdentifier = "tableViewCell"
let newCell : TableViewCell = tableView.dequeueReusableCellWithIdentifier(cellIdentifier) as! TableViewCell
newCell.heading.text = names[indexPath.row]
return newCell
}
最佳答案
尝试将您的数据源方法放在这样的类扩展中:
extension yourViewController: UITableViewDataSource {
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { // cellForRow stuff
}
}
关于ios - Swift cellForRowAtIndexPath定义与先前的值冲突,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36241947/