Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone iOS中的自定义segue_Iphone_Ios_Objective C_Uiviewcontroller_Segue - Fatal编程技术网

Iphone iOS中的自定义segue

Iphone iOS中的自定义segue,iphone,ios,objective-c,uiviewcontroller,segue,Iphone,Ios,Objective C,Uiviewcontroller,Segue,我正在尝试制作一个自定义序列,其中src会崩溃,显示dst。这就是我现在拥有的。我如何使dst落后于src -(void)perform { UIViewController *src = [self sourceViewController]; UIViewController *dst = [self destinationViewController]; [UIView animateWithDuration:0.5

我正在尝试制作一个自定义序列,其中src会崩溃,显示dst。这就是我现在拥有的。我如何使dst落后于src

-(void)perform {
    UIViewController *src = [self sourceViewController];
    UIViewController *dst = [self destinationViewController];

    [UIView animateWithDuration:0.5
                          delay:0.0
                        options:UIViewAnimationCurveEaseIn
                     animations:^{
                         [src.parentViewController.view setTransform:CGAffineTransformMakeTranslation(0, src.view.bounds.size.height)];
                     }
                     completion:nil];

    [src presentViewController:dst animated:NO completion:nil];

}

与其将目标视图控制器安排在源控制器后面,不如尝试以下操作:将源视图控制器渲染到图像视图,将该图像添加到源控制器,然后设置图像下落的动画

这有很多好处:首先,无论您最终做什么,出于性能原因,您都可能需要将源代码视图控制器渲染到图像。其次,它避免了混淆视图控制器层次结构

如果这还不完全清楚的话,这里是一步一步:

  • 将源代码视图控制器渲染到
    UIImageView
  • 将该
    UIImageView
    添加到目标视图控制器(以便它完全覆盖目标视图)
  • 删除源视图控制器并添加目标控制器-这应该是无缝/不可见的,因为目标控制器正在显示您先前准备的渲染图像
  • 设置
    UIImageView
    向下的动画,以显示其下方的视图内容

  • iOS 7仍在保密协议下。所以在当前的格式中,它是离题的。您需要联系developer.apple,以了解支持问题在iOS 6的上下文中是完全相同的。将更改标题。