gpt4 book ai didi

ios - 源 View Controller 在自定义 segue 期间隐藏

转载 作者:可可西里 更新时间:2023-11-01 04:44:33 26 4
gpt4 key购买 nike

我正在尝试制作自定义转场,以便目标 View Controller 从顶部向下滑动。

我根据 the documentation 中的示例编写了我的代码.

问题是执行segue时,源 View Controller 变黑,然后出现动画。如何防止源 View Controller 变黑?

(我已经尝试实现 this answer 中提供的解决方案,但屏幕要么在转换后变黑,要么恢复到源 View Controller 。)

这是我的代码:

-(void)perform{

UIViewController *splashScreen = self.sourceViewController;
UIViewController *mainScreen = self.destinationViewController;

//Place the destination VC above the visible area
mainScreen.view.center = CGPointMake(mainScreen.view.center.x,
mainScreen.view.center.y-600);

//Animation to move the VC down into the visible area
[UIView animateWithDuration:1
animations:^{
mainScreen.view.center = CGPointMake(mainScreen.view.center.x, [[UIScreen mainScreen] bounds].size.height/2 );
}
];

[splashScreen presentModalViewController:mainScreen animated:NO];
}

最佳答案

您的源 View Controller 似乎被隐藏的原因是目标 View Controller 立即出现。

当您编写自定义转场时,您不会同时拥有两个 View 。你也可以

  • 推送 View Controller ,将源 View 添加到目标 View Controller 并制作动画
  • 将目标 View 添加到源 View Controller 并制作动画,然后推送 View Controller
  • 推送到中间 View Controller ,添加两个 View ,制作动画,推送到目标 View Controller 。

在上述所有我说推送 View Controller 的情况下,您可以改为以模态方式呈现 View Controller 。事实上,这可能更适合中间 View Controller 解决方案。

关于ios - 源 View Controller 在自定义 segue 期间隐藏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11719871/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com