我有一个主菜单,导致你玩游戏的视图。从您玩游戏的角度看,您可以点击一个按钮返回到主菜单,我正在使用unwindSegue。现在有办法从主菜单中点击相同的“玩游戏”按钮,替换视图,并保持游戏状态与unwindSegue被调用之前的状态相同,否则我将不得不将数据重新加载到新视图中?如何更换使用unwindSegue后弹出的确切视图?
0
A
回答
1
是的,你可以这样做,但不能用segue,因为它们总是实例化新的控制器(除了展开)。所以,你可以在主菜单中为你的游戏视图控制器创建一个属性,并且只有在它不存在的情况下才会实例化它,然后用pushViewController:animated:来推送它。这样的事情,
-(IBAction)gotToGameView:(id)sender {
if (! self.game) {
self.game = [self.storyboard instantiateViewControllerWithIdentifier:@"Game"];
}
[self.navigationController pushViewController:game animated:YES];
}
0
您应该存储重新创建视图所需的数据。然后,当用户再次进入同一屏幕时,您可以使用保存的数据重新创建视图。
相关问题
- 1. 切换视图/弹出窗口
- 2. 如何使用UIActionSheet切换视图?
- 3. 如何使用UISegmentedControl切换视图?
- 4. 如何使用UIKit Dynamics弹出视图?
- 5. 正确执行UnwindSegue
- 6. 如何以编程方式切换使用视图切换?
- 7. 遍历视图弹出视图后确实加载
- 8. 使用UIAccelerometer切换视图
- 9. 使用modalViewControllers切换视图
- 10. 使用UINavigationController切换视图
- 11. Knockout.js - 如何切换视图
- 12. 如何切换视图
- 13. 如何在视图内切换视图?
- 14. 如何使用弹出按钮切换tableview(swift,cocoa)的内容?
- 15. Android:ActivityGroup - 如何“弹出”视图
- 16. 如何在弹出视图后将UIImage传递回视图
- 17. 队列使用阵列>>弹出后切换元素
- 18. 如何用JavaScript正确切换图像?
- 19. 如何在ajax文章后更改弹出框后面的视图?
- 20. 如何用Three20弹出模态视图?
- 21. Backbone.js切换弹出窗口
- 22. 切换视图
- 23. 切换视图
- 24. 切换视图
- 25. 切换视图
- 26. 如何在用户验证后切换视图
- 27. 确定iCarousel已经切换视图
- 28. 如何切换iOS上的视图
- 29. 切换视图后仍然在视图中调用方法?
- 30. 如何从使用Cordova的MainViewController切换admob视图
我遇到的问题是,游戏有一个单一的球员以及基于回合的模式。因此,假设玩家正在玩单人游戏,并且在游戏中间离开了应用程序而没有给我一个存储游戏数据的机会。然后他得到一个通知,告诉他他在网上回合制游戏中的角色,所以当他打开游戏时,单人游戏视图被替换掉,我失去了数据。所以我试图决定是否以及如何保存数据,或者如果我应该使用故事板来弹出和关闭视图以回到原始单人游戏状态的视图。 –
为什么不创建一个两个视图控制器呢?一个会处理单人模式和一个视图,另一个会处理基于回合的模式?我认为问题在于你试图在一个视图控制器中处理这两种情况。 – RaffAl
我确实有两个视图控制器,问题在于segue每次都创建一个新视图,rdelmar的答案解决了这个问题。 –