学习UITableView过程中,回想视频打一遍代码,发现卡在了第一步。一直显示无法继承协议,而且还多了一个错误:definition conflicts with previous value。百度上也找不到什么原因,仔细一想才发现方法写错地方,看来很多错误还是出现在自己身上。要细心才行。以下是错误的示范:
class ViewController: UIViewController, UITableViewDelegate ,UITableViewDataSource{
@IBOutlet var tableView1: UITableView!
override func viewDidLoad() {
super.viewDidLoad()
tableView1.dataSource = self
tableView1.delegate = self
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 20
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = UITableViewCell(frame: CGRect(x: 0, y: 0, width: 320, height: 48))
cell.detailTextLabel?.text = "By bitos"
cell.textLabel?.text = "hello Bibi"
return cell
}//错误提示:definition conflicts with previous value
}
正确姿势应该是这样的:
class ViewController: UIViewController, UITableViewDelegate ,UITableViewDataSource{ @IBOutlet var tableView1: UITableView! override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. tableView1.dataSource = self tableView1.delegate = self } func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return 20 } func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { let cell = UITableViewCell(frame: CGRect(x: 0, y: 0, width: 320, height: 48)) cell.detailTextLabel?.text = "By bitos" cell.textLabel?.text = "hello Bibi" return cell }
切记切记