我正在将大量数据导入 CoreData。我想显示导入进度的进度条。
首先,我显示进度条。然后我在数我要导入的数据。然后我设置了一个for循环:
- 在这个 for 循环中,我首先设置 coreData 对象。
- 然后我正在增加进度视图。
在这个循环之后,我保存了 coreData 对象并隐藏了 progressBar。
[self.progressView show];
int allFiles = [file count];
int currentFile = 1;
for(NSString *trackid in file) {
[entidyDesc setName:[track objectForKey:@"theKey"]];
float progress = [self convertAmountForProgressBar:currentFile maxNum:allFiles];
self.progressView.progressBar.progress = progress;
}
[self.progressView hide];
[self.managedObjectContext save:nil];
(简化)
问题是,progressBar 没有更新。它显示,但在 for 循环完成后首先更新,而不是隐藏。因此,进度条仅在 for 循环之后短暂显示。
任何想法如何解决这个问题?