如何在TableView中重新加载数据

时间:2017-03-09 21:29:32

标签: ios swift uitableview reloaddata

我在Stack上看到了关于这个问题的一些答案,但是很多都来自5年前并使用旧版本的Swift。我希望每次用户点击保存时重新加载表中的数据,以便现在将附加的事件添加到表中。但无论我似乎什么都不做就出现了! 我尝试在保存功能中添加table.reloadData()。但我得到一个错误:

  

线程1错误,致命错误:在展开可选值时意外发现nil。

class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {
    @IBOutlet weak var txtTitle: UITextField!
    @IBOutlet weak var txtLocation: UITextField!
    @IBOutlet weak var txtDate: UITextField!
    @IBOutlet weak var txtTime: UITextField!

    var eventsArray = [Event]()

    @IBAction func btnSave() {
        let event = Event(tits: txtTitle.text!, locs: txtLocation.text!)

        eventsArray.append(event)
        table.reloadData()
        print(eventsArray)

    }

    @IBOutlet weak var table: UITableView!

    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return eventsArray.count
    }

    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "cell") as! CustomeCell

        cell.title.text = eventsArray[indexPath.row].title
        cell.location.text = eventsArray[indexPath.row].location

        return cell
    }
}

1 个答案:

答案 0 :(得分:0)

您是否在viewDidLoad上设置了tableView&#39的委托?

table.delegate = self