gpt4 book ai didi

swift - 'ViewController' 不符合协议(protocol) 'UITableViewDataSource' swift

转载 作者:搜寻专家 更新时间:2023-11-01 06:38:12 25 4
gpt4 key购买 nike

我已经搜索并得到了这些问题,解决了同样的问题。

但是,我没有犯这些问题的答案中提到的任何错误。

这是我的代码:

class RightViewController: ParentViewController, UITableViewDelegate, UITableViewDataSource {

//properties
var itemsArray: [String] = ["set", "git"]
@IBOutlet var tableView:UITableView! = UITableView()


override func viewDidLoad() {
super.viewDidLoad()

//register cell

self.tableView!.registerClass(MenuCell.self, forCellReuseIdentifier: "MenuCell")
tableView!.rowHeight = UITableViewAutomaticDimension
tableView!.estimatedRowHeight = 140
tableView!.delegate = self
tableView!.dataSource = self

}

override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}

// MARK: <TableViewDataSource>

func numberOfSectionsInTableView(tableView: UITableView) -> Int
{
return 1
}

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return itemsArray.count
}

func tableView(tableView: UITableView, cellForRowAt indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("MenuCell", forIndexPath: indexPath) as! MenuCell

if (indexPath as NSIndexPath).row < itemsArray.count {
let option = itemsArray[(indexPath as NSIndexPath).row]

cell.titleLabel?.text = option

}

return cell

}

我已经实现了所有必需的协议(protocol)方法,它们在我的类范围内。而且我仍然遇到这个烦人的错误。我代码中的ParentViewController其实是另一个UIViewController

enter image description here我可能哪里错了。提前致谢。

最佳答案

问题是您使用的是 swift 的较低版本,而不是 swift 3.0,方法 cellForRowAt indexPath 适用于 swift 3.0,因此您需要使用这个 cellForRowAtIndexPath 而不是那个。

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("MenuCell", forIndexPath: indexPath) as! MenuCell
if (indexPath as NSIndexPath).row < itemsArray.count {
let option = itemsArray[(indexPath as NSIndexPath).row]
cell.titleLabel?.text = option
}
return cell
}

关于swift - 'ViewController' 不符合协议(protocol) 'UITableViewDataSource' swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38968627/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com