I feel a little strange trying to answer it ... as if I just do not understand the question, because you undoubtedly know it better than me, but here it goes.
You use the API and wrote the transition yourself, but are your unsatisfied with the result? So far, I have found this very effective. I created a custom container view controller without the contents of the view (set the child view in full screen). I installed this as my rootViewController .
My containment view controller has a bunch of pre-prepared transitions (specified in enum ), and each transition has a predefined gesture to control the transition. I use 2-finger panning for left / right slides, 3-finger zoom / zoom to zoom in / out to the middle of the screen effect and several others. There is a way to configure:
- (void)addTransitionTo:(UIViewController *)viewController withTransitionType:(TransitionType)type;
Then I call the methods to configure the controller summary shutdowns.
[self.parentViewController addTransitionTo:nextViewController withTransitionType:TransitionTypeSlideLeft]; [self.parentViewController addTransitionTo:previousViewController withTransitionType:TransitionTypeSlideRight]; [self.parentViewController addTransitionTo:infoViewController withTransitionType:TransitionTypeSlideZoom];
The parent container adds transition transition gestures for the transition type and controls the interactive movement between view controllers. If you pan, and you let go in the middle, it will return to what covered most of the screen. When the full transition is complete, the container view controller deletes the old view controller and all the transitions that go with it. You can also remove transitions at any time using the method:
- (void)removeTransitionForType:(TransitionType)type;
While interactive transitions are good, there are some cases where I also need non-interactive transitions. I use a different type for this, because I have some transitions that are only static, because I donβt know which gesture would be suitable for their interactivity (for example, cross fading).
- (void)transitionTo:(UIViewController *) withStaticTransitionType:(StaticTransitionType)type;
I originally wrote a container for the slide column application, but since then I have turned around and reused it in a couple of applications. I have not yet pulled it into the library for reuse, but this is probably only a matter of time.