Ios 关闭视图控制器并使用一个按钮显示另一个视图控制器

Ios 关闭视图控制器并使用一个按钮显示另一个视图控制器,ios,button,dismiss,presentviewcontroller,Ios,Button,Dismiss,Presentviewcontroller,我在这方面发现了几个问题,但除了使用代理之外,还没有找到一个很好的答案。我想出了一个很好的解决方案,但是我不确定从长远来看它是否会坏 这是我的解决方案,到目前为止,它表现得非常出色。如果有人能告诉我为什么这将是一个糟糕的方式来实现这一点,请让我知道 [self dismissViewControllerAnimated:NO completion:^(){ [[[[UIApplication sharedApplication] keyWindow] rootViewControll

我在这方面发现了几个问题,但除了使用代理之外,还没有找到一个很好的答案。我想出了一个很好的解决方案,但是我不确定从长远来看它是否会坏

这是我的解决方案,到目前为止,它表现得非常出色。如果有人能告诉我为什么这将是一个糟糕的方式来实现这一点,请让我知道

   [self dismissViewControllerAnimated:NO completion:^(){
   [[[[UIApplication sharedApplication] keyWindow] rootViewController] presentViewController:vc animated:NO completion:nil];
   }];

这是正确的方法。事实上,苹果公司从iOS 5.0开始就引入了补全块,特别是出于这种目的


如果当前的方法简单且完全有意义,你为什么还要另一种方法呢?

过去,每当我需要完成这项工作时,我都会这样做。我不确定。通过查看堆栈溢出,我从未找到此解决方案。我想我会把它贴出来看看是否有原因: