1
在我的應用程序中,我使用回地線程來打多個服務並使用核心數據執行操作。我已經使用主線程進行背景處理,它的工作正常。 這裏是我的代碼主線程處理問題
dispatch_queue_t main = dispatch_get_main_queue();
dispatch_async(main,
^{
[self backGroundCall];
});
-(void)backGroundCall
{
NSLog(@"Done");
if([CacheManager refreshDBforFirstTimeUseWithDelegate:self])
{
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"IsDBInitialized"];
ContainerViewController *containerViewControllerInstance = [ContainerViewController getContainerInstance];
[containerViewControllerInstance setUserId:_userID];
[progressView setHidden:YES];
[self.view setUserInteractionEnabled:YES];
[self.navigationController setDelegate:containerViewControllerInstance];
[self.navigationController pushViewController:containerViewControllerInstance animated:YES];
}
}
一旦我初始化數據的基礎上,我需要導航到容器view.During初始化我會顯示一個進度條。這是工作正常,當整個後臺進程完成(應用程序處於最小化狀態)。在後臺進程中,如果我來到前臺,進度條不顯示,那時黑屏顯示而不是進度視圖。主威脅容器視圖完成後全部不顯示[如果我來到主線程進程的前臺]。
我需要顯示進度條,當我回來的應用程序在主線程的中間過程。請指導我解決這個問題。
謝謝。
不要在後臺線程的後臺處理。主線程忙時,UI無法響應。 – trojanfoe
請給我一些示例代碼。我需要顯示我在上面的代碼中返回的progressView。 – Ganapathy