title: UIViewController Animated Transitioning fails in iOS8
body: <p>I've got a custom UIViewController transition -- in iOS7, it works perfectly fine.</p>
  
  <p>However, when run on iOS 8, I'm experiencing issues. Specifically, when the presented view controller is dismissed, the original view controller's view disappears entirely - leaving me with a completely blank screen. Here is my code:</p>
  
  <pre><code>@implementation DDCardTransition
  
  - (NSTimeInterval)transitionDuration:(id &lt;UIViewControllerContextTransitioning&gt;)transitionContext {
      return 0.5f;
  }
  
  - (void)animateTransition:(id &lt;UIViewControllerContextTransitioning&gt;)transitionContext {
  
      UIViewController *fromViewController = [transitionContext viewControllerForKey:UITransitionContextFromViewControllerKey];
      UIViewController *toViewController = [transitionContext viewControllerForKey:UITransitionContextToViewControllerKey];
  
      CGRect endFrame = self.destinationFrame;
  
      if (self.presenting) {
          fromViewController.view.userInteractionEnabled = NO;
          toViewController.view.layer.cornerRadius = 6.0f;
  
          UIView *tintAdjustmentView = [UIView new];
          tintAdjustmentView.frame = fromViewController.view.frame;
          tintAdjustmentView.backgroundColor = [UIColor blackColor];
          tintAdjustmentView.alpha = 0.f;
  
          [transitionContext.containerView addSubview:fromViewController.view];
          [transitionContext.containerView addSubview:tintAdjustmentView];
          [transitionContext.containerView addSubview:toViewController.view];
  
          CGRect startFrame = endFrame;
          startFrame.origin.y += [UIScreen mainScreen].bounds.size.height;
          toViewController.view.frame = startFrame;
  
          [CATransaction begin];
          [CATransaction setCompletionBlock:^{
              [transitionContext completeTransition:YES];
          }];
  
          CABasicAnimation *frameAnimation = [CABasicAnimation animationWithKeyPath:@"position"];
          frameAnimation.timingFunction = [CAMediaTimingFunction functionWithControlPoints:0.1f :0.8f :0.0 :1.0];
          frameAnimation.duration = [self transitionDuration:transitionContext];
          frameAnimation.fromValue = [NSValue valueWithCGPoint:CGPointMake(CGRectGetMidX(startFrame), CGRectGetMidY(startFrame))];
          frameAnimation.toValue = [NSValue valueWithCGPoint:CGPointMake(CGRectGetMidX(endFrame), CGRectGetMidY(endFrame))];
          toViewController.view.layer.position = [frameAnimation.toValue CGPointValue];
          [toViewController.view.layer addAnimation:frameAnimation forKey:@"position"];
  
          CABasicAnimation *opacityAnimation = [CABasicAnimation animationWithKeyPath:@"opacity"];
          opacityAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionLinear];
          opacityAnimation.duration = 0.3f;
          opacityAnimation.fromValue = @(0.f);
          opacityAnimation.toValue = @(0.5f);
          tintAdjustmentView.layer.opacity = [opacityAnimation.toValue floatValue];
          [tintAdjustmentView.layer addAnimation:opacityAnimation forKey:@"opacity"];
  
          [CATransaction commit];
      }
      else {
          toViewController.view.userInteractionEnabled = YES;
  
          UIView *tintAdjustmentView = [UIView new];
          tintAdjustmentView.frame = toViewController.view.frame;
          tintAdjustmentView.backgroundColor = [UIColor blackColor];
          tintAdjustmentView.alpha = 0.5f;
  
          [transitionContext.containerView addSubview:toViewController.view];
          [transitionContext.containerView addSubview:tintAdjustmentView];
          [transitionContext.containerView addSubview:fromViewController.view];
  
          endFrame.origin.y += [UIScreen mainScreen].bounds.size.height;
  
          [UIView animateWithDuration:[self transitionDuration:transitionContext] animations:^{
              fromViewController.view.frame = endFrame;
              tintAdjustmentView.alpha = 0.f;
          } completion:^(BOOL finished) {
              [transitionContext completeTransition:YES];
          }];
      }
  }
  
  @end
  </code></pre>
  
  <p>Any idea why this no longer works in iOS8?</p>
  
  <p>Thanks!</p>