2
我制作了一个推送uinavigationcontroller的程序。一旦完成,它会弹出一些东西,然后做一些事情。如何确保UINavigationController在弹出另一个之前已完成动画效果?
它想要做的事情之一是等到它完成之前弹出一些东西。
这是因为它可能做的一件事是推动另一个视图控制器。
我该怎么做?
I already create a category
-(void)SafelyPushController:(UIViewController *) pushee
{
AssertMainThread;
if([self.viewControllers lastObject]!=pushee){
[self pushViewController:pushee animated:YES];
while (false);
}
else{
//DLog(@"Dont need to pushview");
}
while (false);
//[self pushViewController:pushee animated:YES];
}
为了防止一些情况。
我需要更通用的解决方案。
喜欢的东西:
如果navigationController仍然动画,等到它在后台完成,在当前线程执行此块。
那样的事情。
不能使用navigationController:didShowViewController:动画:在UINavigationControllerDelegate检查时动画结束? – pasine