【发布时间】:2015-05-29 17:01:53
【问题描述】:
我有一个嵌入在导航视图控制器中的 UIViewController。然后,我模态地呈现另一个显示倒计时的视图控制器。一旦倒计时结束,模态视图控制器应该被解除并显示与原始呈现 UIViewController 不同的底层视图控制器。
有谁知道如何在 ios8 中使用 Swift 做到这一点?
【问题讨论】:
标签: ios uiviewcontroller segue
我有一个嵌入在导航视图控制器中的 UIViewController。然后,我模态地呈现另一个显示倒计时的视图控制器。一旦倒计时结束,模态视图控制器应该被解除并显示与原始呈现 UIViewController 不同的底层视图控制器。
有谁知道如何在 ios8 中使用 Swift 做到这一点?
【问题讨论】:
标签: ios uiviewcontroller segue
有不同的方法来解决这个问题。一种方法是在呈现模态视图控制器时将初始呈现视图控制器替换为所需的底层视图控制器。
NSArray * viewControllers = [self.navigationController viewControllers];
[viewControllers replaceObjectAtIndex:viewControllers.count - 1 withObject:replacementController];
关闭模式只会显示已经交换的不同底层视图控制器。
【讨论】:
当你从堆栈中执行popViewController 时,会有一个处理程序。这将在此函数结束时调用,因此您可以传递一个块,您可以在其中 presentViewController 或更改当前块。
【讨论】: