我的应用程序下载数据,并且在下载数据后,我试图将用户送回应用程序的主ViewController,但是它不起作用。
代码:
UIStoryboard *storyboard=[UIStoryboard storyboardWithName:@"Main" bundle:[NSBundle mainBundle]];
Full_Sync *fullSyncController = [storyboard instantiateViewControllerWithIdentifier:@"ViewControllerROOTIdentifier"];
[self.navigationController pushViewController:fullSyncController animated:NO];
该方法在NSlog运行时被调用,但是此代码似乎未运行。该代码可在应用程序的其他部分完美运行。不知道为什么它从这里不起作用。
答案 0 :(得分:1)
确保从API接收到结果后返回主线程。网络调用是在另一个线程上执行的异步任务,由于您需要在主线程上执行任何与UI相关的操作,因此需要执行以下操作(Objective-C):
dispatch_async(dispatch_get_main_queue(), ^{
// Perform your transition here.
});
您还需要确保执行过渡的视图控制器嵌入到UINavigationController中!