簡體   English   中英

UITableView numberOfRowsInSection 被多次調用

[英]UITableView numberOfRowsInSection called multiple times

填充表格視圖時應該調用tableView:numberOfRowsInSection方法多少次?

我的應用程序崩潰,沒有警告、錯誤或堆棧跟蹤。 我還測試了內存泄漏,但沒有發現。 該應用程序保持穩定在 1.4MB 左右。

當方法被發送消息時,我有 NSLog 報告,我注意到tableView:numberOfRowsInSection被多次調用。 該應用程序在這些“額外”調用之一期間崩潰。 應用程序崩潰的點各不相同。 我應該指出,如果這有所不同的話,該表將填充大約 600 個單元格。

如果你願意,我可以發布代碼,但我的數據源來自一個singleton class ,所以代碼很多。 任何幫助將不勝感激。

我遇到了同樣的問題,第一次 tableview 實例不是 nil,隨后它是 nil。 問題是,我還沒有設置返回值

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath 

正因為如此,它一直在發生。 一旦我設置了返回值,問題就消失了。 希望這可以幫助某人。

請參閱我在另一個類似問題中的回答: 鏈接
基本上,對表視圖的委托方法的調用可以由不同的事件觸發。 UITableView 多次調用numberOfRowsInSection對我來說並不奇怪(即使對於同一部分)。

最好的方法是使用Lazy table 圖像加載 所以 600 個單元是一個很大的數量,如果你一次調用所有數據,它總是會因為內存問題而崩潰。

嘗試使用我提供的代碼。

stackoverflow上的另一個答案可以幫助您。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM