我有一個UIPageViewController
,其中每個頁面的視圖都包含一個UITableView
。我想在控制器之間進行分頁時提高性能。通過預先加載單元格來提高UITableView的性能
我在一個方便的時刻預先加載了當前頁面的一些控制器,並要求他們的視圖來確保提前提交所有內容。但是,真正的瓶頸實際上是tableview中的細胞,沒有得到預先加載:
MyViewController *vc = [[MyViewController alloc] initWithNibName:nil bundle:nil];
[vc view];
NSLog(@"view: %@", vc.view); // view exists
[vc tableview];
NSLog(@"tableview: %@", vc.tableview); // tableview exists
UITableViewCell *cell = [vc.tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]];
NSLog(@"cell: %@", cell); // cell is null??
如記錄顯示,細胞本身不會被加載,直到實現代碼如下實際上將出現在屏幕上。
我該如何請求屏外UITableView
提前將其可見單元出列?
單元格的外觀如何?你有分析過嗎?聽起來這可能是一個圖像解壓縮的問題,在這種情況下,你可以做出一些明確的優化。你能提供一個單元格的屏幕截圖嗎? –
沒有圖像,當然我可以在一定程度上優化單元格。但我最感興趣的是爲什麼即使明確要求tableview也不加載單元格。 –