【发布时间】:2015-01-11 07:34:34
【问题描述】:
我有这个表视图控制器:
class EventListViewController: UIViewController, UITableViewDelegate, UITableViewDataSource, UIPickerViewDelegate, UIPickerViewDataSource {
// Event table view
@IBOutlet weak var eventTableView: UITableView!
var events: [Event] = []
...
我想从 Web 服务异步加载数据,这可能需要 5 秒。
我有这个异步代码:
override func viewDidLoad() {
super.viewDidLoad()
...
// ApiClient is a custom wrapper for my API
ApiClient.sharedInstance.getEvents({
(error: NSError?, events: [Event]) in
// All this runs within an asynchronous thread
if let error = error {
println("Error fetching events")
println(error.localizedDescription)
}
self.events = events
// How to notify the table view?
})
...
数据加载正常,但表保持为空。一旦再次调用viewWillAppear(...),数据就在表中。
我需要通知表格视图吗?最干净的方法/最佳做法是什么?
谢谢!
【问题讨论】:
标签: ios uitableview swift