im пытается реализовать пользовательский стиль перехода, чтобы исчезнуть в новом Viewcontroller, используя пользовательский segue и реализующий класс segue. Мне почти удается реализовать это, но каждый раз, когда я запускаю приложение, я получаю предупреждение/ошибку:Пользовательский переход UIViewController с использованием пользовательского класса segue
«Неуравновешенные вызовы для перехода к началу/концу для перехода».
Хотя приложения работают нормально, во время анимации немного мерцает.
вот мой код:
@implementation BlurredFadeSague
- (void)perform{
UIViewController *sourceViewController = self.sourceViewController;
UIViewController *destinationViewController = self.destinationViewController;
[sourceViewController.view addSubview:destinationViewController.view];
destinationViewController.view.alpha = 0.0f;
[UIView animateWithDuration:0.5f
delay:0.1f
options:UIViewAnimationOptionCurveLinear
animations:^{
destinationViewController.view.alpha = 1.0;
}
completion:^(BOOL finished){
[destinationViewController.view removeFromSuperview];
[sourceViewController presentViewController:destinationViewController animated:NO completion:NULL];
}];
}
@end
и я называю переход образуют IBAction так:
[self performSegueWithIdentifier:@"blurred" sender:self];
однако я получаю CONSOL предупреждение/ошибка:
Unbalanced calls to begin/end appearance transitions for
<DeviceControlViewController: 0x17597050>.
Был бы очень рад за любую помощь, best vinc.
Я не знаю, продолжаете ли вы по-прежнему бороться с этой проблемой, но я предполагаю, что вы получили эту ошибку, потому что вы не указываете UIKit, что вы перемещаете viewcontrollers. Когда viewcontrollers перемещаются в другие окна или контроллеры parentview, вы должны объявить это диспетчеру view с помощью '' willMoveToParentViewController: ''(http://apple.co/1VPJEqM) или [' willMoveToWindow: '] (http://apple.co/ 1Mr2qDx), используя 'nil', чтобы указать, когда он будет удален. – vrwim