Delegado de transición para animation UITabBarController

Tengo una class personalizada UIViewControllerAnimationTransition creada y necesito hacer que esto UITabBarController un UITabBarController cuando cambia las tabs.

Sin tabBarController , tabBarController no utiliza la barra de tabs normal. Tengo una implementación personalizada que actúa como esta, y cuando se presiona un button, llama a este código:

 tabBarController.selectedIndex = index 

Actualmente tengo el tabBarController (subclass) como el delegado para su propia transitionDelegate . Sin embargo, el método delegado animationControllerForPresentedController nunca se llama.

¿Está bien que el controller de barra de tabs sea su propio delegado? Si es así, ¿por qué nunca se llama al código de transición?

animationControllerForPresentedController es el enfoque incorrecto para el controller de barra de tabs.

En la subclass UITabBarController, adopte el protocolo UITabBarControllerDelegate y UITabBarControllerDelegate como su propio delegate . Luego, use tabBarController: animationControllerForTransitionFromViewController: toViewController: para devolver el object personalizado UIViewControllerAnimatedTransitioning .

Para get una mejor visualización, mire VCTransitionsLibrary en la carpeta TabBarDemo.

¿Usaste estos methods de delegado como este?

 @interface BTSlideInteractor : NSObject <UIViewControllerAnimatedTransitioning, UIViewControllerTransitioningDelegate> - (IBAction)showModalButtonWasTouched:(id)sender { BTSlideInteractor *interactor = [[BTSlideInteractor alloc] init]; interactor.presenting = YES; BTModalViewController *modalController = [self.storyboard instantiateViewControllerWithIdentifier:@"ModalViewController"]; modalController.modalPresentationStyle = UIModalPresentationCustom; modalController.transitioningDelegate = interactor; [self presentViewController:modalController animated:YES completion:nil]; } 

Utilice este enlace para Referencia: https://github.com/brightec/CustomViewControllerTransition/blob/master/test/BTViewController.m

Si no encontró la solución, amablemente agregue sus códigos.