ios - Interactive transition similar to scroll view -
i have implemented interactive transition between 2 view controllers, using gesture recognizer , uipercentdriveninteractivetransition
. doing custom swipe transition.
i improve 2 things in order have similar scrollview animation:
responsiveness. when pan super fast , short, next vc not showed, plus bug comes in (
animationended
not called, story) there way preload next view controller, have child view controller may be? seems doing work in viewdidload.in implementation when gesture recognizer ends, call
finishinteractivetransition
. works ok, if start new pan gesture before transition completed ui jumps instead of smoothly scrolling. may should callfinishinteractivetransition
after delay, , calling manuallyupdateinteractivetransition
in mean time?
may can use api sets have interactive animation (but scrollview not option)?
just fyi: here view hierarchy during interactive swipe, gesture attached navigation view:
try subclassing uipercentdriveninteractivetransition
, implement these methods. should smoothen out jerks:
- (void)startinteractivetransition:(id<uiviewcontrollercontexttransitioning>)transitioncontext { [super startinteractivetransition:transitioncontext]; self.layer = transitioncontext.containerview.layer; } - (void)finishinteractivetransition { [super finishinteractivetransition]; self.layer.speed = 1; self.layer.begintime = [self.layer converttime:cacurrentmediatime() fromlayer:nil] - self.layer.timeoffset; } - (void)cancelinteractivetransition { [super cancelinteractivetransition]; self.layer.speed = -1; self.layer.begintime = cacurrentmediatime(); }
Comments
Post a Comment