我正在对UINavigationController推送动画进行动画处理,以跟随this,但是问题是在完成动画之前不会调用viewDidLoad,这看起来很糟糕,因为我正在将照片等加载到目标视图控制器上。如何确保目标视图控制器已“准备就绪”(viewDidLoad)被调用并且在动画开始之前已初始化所有内容?
[UIView transitionWithView:self.navigationController.view
duration:0.75
options:UIViewAnimationOptionTransitionFlipFromRight
animations:^{
[self.navigationController pushViewController:viewcontroller animated:NO];
}
completion:nil];
最佳答案
听起来您的事件顺序是混乱的。理想情况下,应该以自己的方法加载照片。您可以在“ ViewWillAppear”方法中调用此方法,以便在加载视图之前完成此操作。在您的情况下,如果将图像加载移动到某个方法,则可以在[self.navigationController pushViewController:viewcontroller animated:NO];
行上方调用它。
[viewcontroller loadImageMethod];
[UIView transitionWithView:self.navigationController.view
duration:0.75
options:UIViewAnimationOptionTransitionFlipFromRight
animations:^{
[self.navigationController pushViewController:viewcontroller animated:NO];
}
completion:nil];
关于ios - 在动画完成之前,翻转过渡UINavigationController推送不会调用viewDidLoad,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29202450/