首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >取消先前的视图控制器

取消先前的视图控制器
EN

Stack Overflow用户
提问于 2015-03-23 13:02:07
回答 2查看 1K关注 0票数 0

我正在开发一个多视图控制器的游戏。VC1(游戏介绍) -> VC2(游戏选择) ->VC3,VC4,VC5(游戏) -> VC6(显示标记)

所有的箭头都是模态的

我使用展开函数从VC6返回到VC2,并想要重放。然而,当选择一个游戏去VC3时,VC3并不像预期的那样是全新的。它显示为完成游戏的条件。

如果我真的想在显示标记之后重放它,我如何使用segue和查看控制器来实现这一点?

此外,如何才能完全删除前一个视图控制器的实例?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-03-23 14:56:34

您可以回到parentViewController链上:

代码语言:javascript
复制
UIViewController *viewController = nil;
do {
    viewController = self.parentViewController;
} while (![self isViewControllerImLookingFor:viewController]);

或者您可以实现一个自定义导航堆栈管理器,并存储一个导航控制器数组,类似于UINavigationController的工作方式。

票数 1
EN

Stack Overflow用户

发布于 2015-03-23 13:22:27

您可以像这样操作导航控制器的视图控制器数组

代码语言:javascript
复制
NSMutableArray *navigarray = [NSMutableArray arrayWithArray:self.navigationController.viewControllers];
[navigarray removeLastObject]; //navigarray contains all vcs
[[self navigationController] setViewControllers:navigarray animated:YES];
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29210946

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档