如何在我的 TableView 中重新加载数据
How do I reload data in my TableView
我在 Stack 上看到了一些关于这个问题的答案,但其中很多是 5 年前的,使用的是 Swift 的旧版本。我想在每次用户点击保存时重新加载 table 中的数据,以便附加事件现在将添加到 table。但无论我做什么似乎都没有出现!
我尝试在我的保存功能中添加 table.reloadData()
。但是我得到一个错误:
Thread 1 error, Fatal error: unexpectedly found a nil while unwrapping an optional value.
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
}
}
你是否在 viewDidLoad 上设置了 tableView 的委托?
table.delegate = self
我在 Stack 上看到了一些关于这个问题的答案,但其中很多是 5 年前的,使用的是 Swift 的旧版本。我想在每次用户点击保存时重新加载 table 中的数据,以便附加事件现在将添加到 table。但无论我做什么似乎都没有出现!
我尝试在我的保存功能中添加 table.reloadData()
。但是我得到一个错误:
Thread 1 error, Fatal error: unexpectedly found a nil while unwrapping an optional value.
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
}
}
你是否在 viewDidLoad 上设置了 tableView 的委托?
table.delegate = self