class ListVC: UIViewController {
@IBOutlet weak var listTable: UITableView!
var items: [String] = ["A", "B", "C"]
override func viewDidLoad() {
super.viewDidLoad()
self.listTable.register(UITableViewCell.self, forCellReuseIdentifier: "cell")
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return self.items.count;
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell:UITableViewCell = self.listTable.dequeueReusableCell(withIdentifier: "cell")! as UITableViewCell
cell.textLabel?.text = self.items[indexPath.row]
return cell
}
}
上面是我在视图控制器中的代码,但我收到错误说:
***由于未捕获的异常'NSInvalidArgumentException'终止应用程序,原因:' - [R_Test.ListVC tableView:numberOfRowsInSection:]:无法识别的选择器发送到实例0x7ff8f9c22e40'
答案 0 :(得分:0)
设置class ListVC: UIViewController,UITableViewDataSource, UITableViewDelegate
override func viewDidLoad() {
super.viewDidLoad()
self.listTable.dataSource = self
self.listTable.delegate = self
self.listTable.register(UITableViewCell.self, forCellReuseIdentifier: "cell")
}
答案 1 :(得分:0)
更改
class ListVC: UIViewController
到
class ListVC: UIViewController, UITableViewDelegate, UITableViewDataSource
并在VDL
listTable.delegate = self
listTable.dataSource = self
答案 2 :(得分:-1)
您可以将class ListVC: UIViewController
更改为class ListVC: UIViewController, UITableViewDelegate,UITableViewDataSource
,然后在didLoad()
方法中添加以下代码:
self.listTable.dataSource = self
self.listTable.delegate = self