解決自定義Tableviewcell顯示錯亂問題
-
要是要解決這個問題,就需要用到UITableviewCell的prepareForReuse方法
-
cell被重用如何提前知道? 重寫cell的prepareForReuse 官方頭文件中有說明.當前已經被分配的cell如果被重用了(通常是滾動出屏幕外了),會調用cell的prepareForReuse通知cell.注意這里重寫方法的時候,注意一定要調用父類方法[super prepareForReuse] .這個在使用cell作為網絡訪問的代理容器時尤其要注意,需要在這里通知取消掉前一次網絡請求.不要再給這個cell發數據了.
// if the cell is reusable (has a reuse identifier), this is called just before the cell is returned from the table view method dequeueReusableCellWithIdentifier:. If you override, you MUST call super. - (void)prepareForReuse { [super prepareForReuse]; }
自定義UITableViewCell的方法有很多 發現一些人都會遇到自己定義的cell里面圖片錯亂的問題 這個問題往往是因為沒有實現prepareForReuse這個方法導致的.
UITableViewCell在向下滾動時復用, 得用的cell就是滑出去的那些, 而滑出去的cell里顯示的信息就在這里出現了 解決的方法就是在UITableViewCell的子類里實現perpareForReuse方法, 把內容清空掉