gpt4 book ai didi

iOS 开发 - 无法将类型 'ViewController' 的值分配给类型 'UITableViewController'

转载 作者:搜寻专家 更新时间:2023-11-01 05:57:36 26 4
gpt4 key购买 nike

我正在学习 iOS 开发,但我对此了解不多。我正在关注这个 tutorial .

在 ViewController 上我有这段代码:

class ViewController: UIViewController {

var feedItems: NSArray = NSArray() //Array de localizaciones
var SelectedLocation: LocationModel = LocationModel() //Referencia al modelo
@IBOutlet weak var listTableView: UITableView! //LIstView

override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.

//Inicializamos HomeModel

//Delegamos a la vista los métodos de la tabla para rellenarla
self.listTableView.delegate = self
//Establecemos que la vista será el dataSource de la tabla
self.listTableView.dataSource = self

//Instanciamos el HomeModel, su dataSource y delegate para el tableView
let homeModel = HomeModel()
homeModel.delegate = self
homeModel.downloadItems()
}

//implementamos el método del protocolo de HomeModel, en el guardamos los items que recibe a través
//de delegation y llamamos a reloadData del tableView que hará que se active el método delegado
func itemsDownloaded(items: NSArray) {

feedItems = items
self.listTableView.reloadData()
}


func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
// Return the number of feed items
return feedItems.count

}

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
// Retrieve cell
let cellIdentifier: String = "BasicCell"
let myCell: UITableViewCell = tableView.dequeueReusableCellWithIdentifier(cellIdentifier)!
// Get the location to be shown
let item: LocationModel = feedItems[indexPath.row] as! LocationModel
// Get references to labels of cell
myCell.textLabel!.text = item.address

return myCell
}

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


}

当我尝试编译时出现错误:无法在 viewDidLoad 函数内将类型“ViewController”的值分配给类型“UITableViewController”。我知道错误是什么意思,系统无法转换隐式类型。但是,我该如何修复错误?你能帮帮我吗?

提前致谢。

最佳答案

在您的类(class)中,您实现了 Tableview 的委托(delegate)和数据源方法。但是您没有在您的类(class)中添加委托(delegate)名称。

Declare that your class conforms to the UITableViewDataSource, UITableViewDelegate protocol and implement any of those protocol methods that you need.

改变这个

  class ViewController: UIViewController
{

进入

 class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate
{

关于iOS 开发 - 无法将类型 'ViewController' 的值分配给类型 'UITableViewController',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35287574/

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