刷著刷著怎么就奔潰了呢
是因?yàn)楫?dāng)你第一次下拉的時(shí)候, 數(shù)組被清空, 網(wǎng)絡(luò)請(qǐng)求肯定是異步的, 并不能保證什么時(shí)候數(shù)據(jù)能回來, 解析數(shù)據(jù), 刷新tableView的時(shí)候 恰好, 又刷新了一次數(shù)據(jù), 把數(shù)組清空, 但是tableView此時(shí)正在刷新數(shù)據(jù), 需要從數(shù)組里取得行對(duì)應(yīng)的數(shù)據(jù)模型, 數(shù)組已被清空, 導(dǎo)致的數(shù)組越界的奔潰
一開始遇到這個(gè)問題, 很懵逼, 這個(gè)怎么去控制, 即使加了一層加載中的提示覆蓋, 手續(xù)快的人 還是會(huì)奔潰, 雖然概率比較小, 但是這個(gè)問題程序能解決的, 肯定要避免
說說解決的辦法吧
就是在取模型的時(shí)候, 一定要判斷是否能取出來,可以取出來, 才能去取出來, 賦值給Cell 一行代碼:
if (indexPath.row < self.item.count){
在這里取模型才是安全的
}
上面只是演示了取行模型, 對(duì)應(yīng)的組模型也是一個(gè)道理
武功再高, 也有可能忘記, 切記切記