由於tableview的cell復用機制,當cell出了螢幕會被放到快取池中等待被復用,但此時快取池中的這個cell上的控制項並沒有被銷毀,而當這個cell要被復用時就會造成需要展示的新內容還是之前的內容。
解決方法:
1.當某個cell從快取池中被調出來需要被復用時,cell會先呼叫prepareforreuse方法,所以在這個方法中把控制項上的內容置nil,就不會造成顯示混亂問題。
- (void)prepareforreuse
2.如果cell數較少不需要復用:
去掉[tableview dequeuereusablecellwithidentifier:cellidentifier],用
***tableviewcell
*cell = [[[
nsbundle
mainbundle
]loadnibnamed
:@"***tableviewcell"
owner
:self
options
:nil
]lastobject
]; 方法重新建立cell
每次走建立cell的**方法時都重新建立乙個新cell。
計算UITableViewCell高度
uitableview是先執行 cgfloat tableview uitableview tableview heightforrowatindexpath nsindexpath indexpath函式計算整個uitableview內容高度,然後才執行 uitableviewcell table...
UITableViewCell重用問題
在寫sina 微博介面的過程中使用到了cell,那麼就是在cell上新增一些控制項,但是由於每條微博的內容都是不同的,所以在顯示的過程中,出現了內容重疊的問題,其實就是uitableviewcell重用機制的問題。cpp view plain copy uitableviewcell tablevi...
UITableViewCell重用機制
uitableview是ios開發中使用頻率非常高的乙個控制項,它常被用來展示資訊列表,儘管資訊資料可能非常多,但uitableview消耗的資源卻並不會隨著展示資訊的增多而變大,這都要得益於uitableviewcell的重用機制,重用機制 顧名思義,就是反覆利用資源的機制。以下通過一些 來看下通...