我在这里需要帮助,我正在使用自定义 Segue 将 View Controller 推送到另一个 View Controller 。
当使用cutom segue推送时,uiactivityindicator在 View 加载时不会自动动画。
但是,如果我在 Storyboard 上使用推送方法,uiactivityindicator 会自动生成动画。
我做错了什么?
-(void)perform {
UIViewController *sourceVC = (UIViewController *) self.sourceViewController;
UIViewController *destinationVC = (UIViewController *) self.destinationViewController;
[UIView transitionWithView:sourceVC.navigationController.view duration:0.5
options:UIViewAnimationOptionTransitionCrossDissolve
animations:^{
[sourceVC.navigationController pushViewController:destinationVC animated:NO];
//NSLog(@"count of subview %i", [self.view.subviews count]);
}
completion:NULL];
}
最佳答案
试试这个:
UIViewController *sourceVC = (UIViewController *) self.sourceViewController;
UIViewController *destinationVC = (UIViewController *) self.destinationViewController;
[UIView transitionFromView:sourceVC.view toView:destinationVC.view duration:.5 options:0 completion:^(BOOL finished) {
[sourceVC.navigationController pushViewController:destinationVC animated:NO];
}];
-pushViewController:animated:
不应放入动画 block 中,而应放入完成 block 中。
关于iphone - 使用自定义 segue 时 UIActivityIndicatorView 卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9527418/