UITableView挂起大数据

时间:2012-11-02 14:01:24

标签: iphone ios uitableview

我有一个场景,我正在从数据库中检索HTML字符串,并使用UITextView将该HTML文件加载到Cell中。我面临的一个问题是,TableView会挂起一段时间,从而降低应用程序的性能。并且有大量数据这个问题变得很糟糕,有时候应用程序会崩溃!我正在寻找一种解决方案,可以使我的应用Tableview滚动更顺畅,更快。

我在这里使用自定义单元格。

我尝试了很多方法,但仍然达不到我的目标。需要一些专家建议!

1 个答案:

答案 0 :(得分:0)

您是否尝试使用过块?尝试在下载HTML字符串时使用此调度函数:

dispatch_queue_t download = dispatch_queue_create("downloadQueue", nil);
            dispatch_async(download, ^{
                // Write download code that stalls UI here.
            });

请注意,不要在块中放置任何UIKit代码,因为它只允许在主线程上运行,这会导致应用程序崩溃。要解决此问题,您需要添加:

dispatch_queue_t download = dispatch_queue_create("downloadQueue", nil);
            dispatch_async(download, ^{
                // Write download code that stalls UI here.

                dispatch_async(dispatch_get_main_queue(), ^{
                    //Write UIKit code here, example:
                    [tableView reloadData];
                });
            });