我需要按级别设计一个游戏,只有这样才能从每个级别前进或回到家中。没有必要回到以前的水平。 这就是场景:
MENU-> LEVEL 1 - >第2级 - > ......等级9 - >等级10
所以我扩展了UIViewController类,并将它分配给了storyboard中的10个对象。当某些条件(它并不重要)发生时,我需要传递到下一级,丢弃当前级别的内存,这是不再需要的。 这样做的最佳方式是什么? 请尽快回答并感谢
答案 0 :(得分:1)
如果您希望能够从VC1(home) - > VC2 - > VC3顺序向前移动,但总是向后跳转到VC1(home),然后使用展开segue。这使您可以完全按照自己的意愿行事,并提供进一步跳回任何先前VC的能力。顺便说一句,unwind为你处理内存问题。这很容易实现,我建议你看一下这篇优秀的文章:
答案 1 :(得分:0)
shouldPerformSequeWithIdentifier
之前调用 prepareSegue
。所以你可以在这里做你的逻辑以防止实际的segue。只需返回false并执行您需要的操作。
- (BOOL)shouldPerformSegueWithIdentifier:(NSString *)identifier sender:(id)sender{
if ([identifier isEqualToString:@"mySegue"]) {
// Do what you need here
[self.navigationController popToRootViewControllerAnimated:YES];
return FALSE;
}
return TRUE;
}