我在单视图应用中有以下课程。在IB中,我已将数据源和datadelegate连接到tableview。有没有什么我做错了没有桌面代表开火?
小区标识符在IB中设置。
import UIKit
class ViewController: UITableViewController {
let myarray = ["item 1", "item 2", "item 3", "item 4"]
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.
}
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell:UITableViewCell = UITableViewCell(style: UITableViewCellStyle.Default, reuseIdentifier: "test")
cell.textLabel?.text = myarray[indexPath.item]
return cell;
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 4
}
}
IB中已有一个原型单元。
另外一件事,viewDidLoad()甚至没有开火。
答案 0 :(得分:1)
您应该在cellForRowAtIndexPath
中将单元格出列。在故事板中,如果还没有UITableViewCell,则将UITableViewCell添加到表中,您应该看到原型单元格。确保原型的标识符是" test"就像它在你的代码中一样。
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell:UITableViewCell = tableView.dequeueReusableCellWithIdentifier("test") as UITableViewCell
cell.textLabel?.text = self.myarray[indexPath.row]
return cell
}