我有一個Posts
類,我在UITableViewController
使用Parse
作爲我的後端查詢。數組索引超出範圍刷新
在我的viewDidAppear
中,我打電話給我的loadData()
函數。然後我有一個var refresher = UIRefreshControl()
負責我的refresh()
功能。
經過幾次重新加載數據,我得到一個fatal error: Array index out of range
和下面的代碼行突出顯示在我的cellForRowAtIndexPath
。
什麼是有趣的是,當我打印出來使用println(drive)
什麼在我的 指數路徑,所有的職位都在那裏。但之後有些帖子出現兩次,然後應用程序崩潰。
timelineData.removeAll(keepCapacity: false)
我認爲有這個應該清除一切,所以我不知道爲什麼會發生這種情況。
這是我的代碼,用於我的刷新功能。
func refresh()
{
println("refresh table from pull")
timelineData.removeAll(keepCapacity: false)
var findItemData:PFQuery = PFQuery(className:"Posts")
findItemData.addDescendingOrder("createdAt")
findItemData.findObjectsInBackgroundWithBlock{
(objects:[AnyObject]? , error:NSError?) -> Void in
if error == nil
{
self.timelineData = objects as! [PFObject]
self.newsFeedTableView.reloadData()
}
}
self.refresher.endRefreshing()
}
我試着用解析的query.cachePolicy
但是這並不重要,因爲碰撞發生保存。 https://parse.com/docs/ios/guide#queries-querying-the-local-datastore
我也認爲這是因爲我有Parse.enableLocalDatastore()
但仍然沒有運氣。
如前所述,我確實打電話給我的其他功能loadData
在我的viewDidAppear
中,不確定這是否可能是問題,但我不知道如何在有更新時檢查數據。仍然不確定這是否是問題的根源。
編輯1
我重視我的timelinedata計數幾個功能。第二圖像是當我打印計數我cellForRowIndexPath
您應該在代碼中的多個位置打印數組的邊界(計數)。 – LinusGeffarth
so println(timelinedata.count)是什麼意思? @LinusG。 – kareem
是的。然後在你的文章中發佈輸出。 – LinusGeffarth