我的代码有一些问题,不知道如何加快速度。这是我来自应用程序委托的代码(didFinishLaunchingWithOptions 方法体):
initialized = [[NSUserDefaults standardUserDefaults] boolForKey:@"initialized"];
if (!initialized) {
dispatch_queue_t queue = dispatch_get_global_queue(
DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
dispatch_async(queue, ^{
[DAO setDocumentsCacheDirectory:[NSHomeDirectory() stringByAppendingPathComponent:@"Documents"]];
....download images and files needed by application
NSLog(@"%@", @"Finished downloadding images and files");
[[NSNotificationCenter defaultCenter] postNotificationName:@"refreshView" object:nil];
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"initialized"];
});
}
在进行此异步下载时,我的视图中有旋转的 gif 图像。正如您所看到的,当所有这些下载完成时,我的视图控制器中触发了 refreshView 方法。
加载完成重新加载后,我有 NSLog(@"%@", @"Finished reloading.."); 所以我知道视图何时重新加载。
问题 :
所以我在看控制台:
2012-06-07 12:52:34.898 TestApp[29800:13c03] Finished downloadding images and files
[Switching to process 29800 thread 0x13c03]
2012-06-07 12:52:34.909 TestApp[29800:13c03] Finished reloading..
文件下载似乎在一两秒内完成。然后,正如您通过时间戳看到的那样,视图重新加载完成后立即。
但事情是应用程序等待 5 秒左右,我不知道发生了什么以及发生了什么,然后视图才会重新刷新,尽管消息完成重新加载.. 大约 5 秒前显示。
你接下来会做什么?