我有一个使用View控制器设置的故事板。视图控制器分为两半,一半是UI日期选择器,另一半是表视图。当我将视图控制器设置为委托和数据源时,我收到以下错误
reason: '-[UIViewController tableView:numberOfRowsInSection:]: unrecognized selector sent to instance 0x7fdb29b4d9e0'
我的视图控制器按以下方式定义
import Foundation
import UIKit
class CustomViewController: UIViewController , UITableViewDelegate , UITableViewDataSource{
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int{
return 3;
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell{
var sampleCell = tableView.dequeueReusableCellWithIdentifier("cell") as! UITableViewCell
return sampleCell;
}
}
答案 0 :(得分:2)
你确定你的观点类是你的桌子吗?当我忘记设置我的视图时,我得到了同样的错误。
答案 1 :(得分:0)
你是否有一个连接到storyboard / nib中的UITableView的IBOutlet属性?视图控制器是否设置为表视图的委托和dataSource?
答案 2 :(得分:0)
您需要为UITableView设置一个插座并设置代理:
然后在viewDidLoad中设置tableView的数据源并委托给self,因为ViewController实现了协议。