简而言之,我有一个应用程序,旨在显示存储在手机本地的一堆数据,在 CoreData 中。
我从 CoreData 中提取数据,然后将大约 70 个子视图添加到主 UIView。这会导致应用程序冻结(不响应),直到将所有子视图添加到主视图。
我想找到一种方法来异步添加所有子视图,以便应用程序不会冻结。
我尝试使用performSelectorOnMainThread
,但它需要相同的时间。
我能做些什么?
谢谢。
[编辑] 每次按下按钮时,视图都必须更新自身,因此每次按下按钮时,它都会在数据库中搜索并更新视图,这意味着删除之前添加的所有子视图,并在主视图中添加大约 70 个子视图。
这有点像代码的样子:
currentEventsArray = I GET THE EVENTS FROM COREDATA
for(int i = 0; i < [currentEventsArray count]; i++){
//I DO SEVERAL OPERATIONS WITH THE DATA AND THEN FINALLY...
[self.view addsubview:aEventView];
}
currentEventsArray 可以有 50 到 80 个事件,而不是等到它完成所有事件,我可以独立添加子视图而不是同时添加吗?