我的函数中出现了返回错误。
错误信息是“无法转换类型'UITableViewHeaderFooterView的返回表达式?'返回类型'UITableViewCell'
import UIKit
class PhotosViewController: UIViewController {
var photos = Photo.downloadAllPhotos()
struct Storyboard {
static let photoCell = "PhotoCell"
}
@IBOutlet weak var tableView: UITableView!
override func viewDidLoad() {
super.viewDidLoad()
tableView.dataSource = self
}
}
extension PhotosViewController : UITableViewDataSource
{
func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return photos.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
{
let cell = tableView.dequeueReusableHeaderFooterView(withIdentifier:
Storyboard.photoCell)
//error Cannot convert return expression of type 'UITableViewHeaderFooterView?' to return type 'UITableViewCell'
return cell
}
}
答案 0 :(得分:-1)
我解决了这个问题。将底部的代码更改为:
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
{
let cell = tableView.dequeueReusableCell(withIdentifier: Storyboard.photoCell)
return cell!
}