3
在scrollViewDidScroll中,我檢查表格視圖是否滾動到足夠靠近底部,如果是,執行網絡請求以從服務器獲取新數據,以及何時網絡請求成功我更新了數據模型,然後通過調用[tableView reloadData]更新tableView。當追加從網絡返回的新單元格時,UITableView不連貫滾動
症狀是當網絡請求完成並且新項目添加到表格時,滾動性能不穩定。
有誰知道什麼可能會導致問題?
在scrollViewDidScroll中,我檢查表格視圖是否滾動到足夠靠近底部,如果是,執行網絡請求以從服務器獲取新數據,以及何時網絡請求成功我更新了數據模型,然後通過調用[tableView reloadData]更新tableView。當追加從網絡返回的新單元格時,UITableView不連貫滾動
症狀是當網絡請求完成並且新項目添加到表格時,滾動性能不穩定。
有誰知道什麼可能會導致問題?
不重新加載整個表視圖
只是你的數據添加到數據源,並調用[的tableView:insertRowsAtIndexPaths:withRowAnimation]
例..
// addNewDataToDataSource(data)
[tableView beginUpdates];
[tableView insertRowsAtIndexPaths:indexes withRowAnimation:UITableViewRowAnimationAutomatic];
[tableView endUpdates];
有多少項目在駕駛桌子的模型? –
可能有幾千個,但是當從服務器獲取<100個項目時,我看到了滾動問題。但是這個問題並沒有很好的可靠性,所以我不知道如何開始調試。 – Pinch
下載的數據量是多少?處理需要多長時間?它是否在主線程上運行?它是否被放入核心數據或其他數據存儲?如果您向下滾動,開始網絡請求,然後在請求完成時開始向上滾動,那麼波濤洶涌的滾動是? – Wain