有人可以爲我澄清一些東西。爲UITableView
蘋果文件說當uitableview調用reloaddata
`UITableView` overrides the layoutSubviews method of `UIView` so that it calls reloadData only when you create a new instance of `UITableView` or when you assign a new data source.
,我發現了以下行爲:
在我viewDidLoad
,我有tableView.dataSource = self.
在我getDataFromDatabase
,我叫[tableView reloadData]
。這似乎工作正常,但我認爲發生了什麼是表正在填充一個空白數組,然後,當數據庫調用回來,它重新加載與數據的數組。
我試圖執行以下操作: 在viewDidLoad
中,刪除tableView.dataSource = self;
,並將其添加到getDataFromDatabase
方法中。例如
(void)getDataFromDatabase
{
[getData completionHandler^() // an async db call
{
tableView.dataSource = self;
}];
}
這似乎沒有工作。該表未填充。如果我在設置dataSource = self
後添加[tableView reloadData]
,但在文檔中,當我設置dataSource = self
時,它不應該自動調用reloadData
「僅當您創建UITableView
的新實例或分配新數據源時纔會調用reloadData。 「 ?
請從數據庫中提取詳細信息後檢查你的數組。如果您的查詢無法獲取記錄,那麼哪些數據將在表視圖中重新載入 – chandan
@Jason給定的代碼有許多錯別字。也許這只是一個問題。請複製並粘貼編譯器能夠無誤地解析的代碼。 – CouchDeveloper