根据标签表明我正在使用Xcode为iPad开发。
所以,我有一个新游戏设置屏幕,位于我的主菜单屏幕和实际游戏屏幕之间。新的游戏设置屏幕应该允许用户通过选择玩家的数量,为每个玩家选择化身并设置他们的名字来定制他们的游戏。我所做的是我设置了继续按钮,将所有设置写入appData.plist文件,然后进入实际的游戏屏幕。当游戏界面出现时(viewDidLoad方法),它会从plist中读取,以便将玩家与各自的头像添加到桌面等等。
问题是,这是将数据从新游戏设置屏幕传递到游戏屏幕的正确方法吗?我应该使用某种方法从屏幕上收集信息并将其传递到游戏屏幕而无需写入某个文件吗?我想最终的问题是你应该如何将数据从一个视图控制器传递到另一个视图控制器?我正在使用一些plist文件写入,然后在电路板出现时读取。我怀疑这不是正确的做法。但是,我想在某些时候我需要将这些数据保存到文件中,因为我必须能够恢复我的应用程序的状态,即使它被关闭或中断。但是,您最喜欢的方法是什么?
答案 0 :(得分:3)
您也可以使用Settings.bundle随时使用应用程序的内置设置屏幕。这非常简单,您可以使用默认的iPad设置屏幕进行应用程序设置,而不是设置手工设置。
对于传递信息,我需要的信息通常是单个对象(在您的情况下可能是Player.m),因此我在下一个视图中创建一个属性来保存它。然后在显示视图之前我会做(例如):
GameViewController *gameView = [[GameViewController alloc] initWithNibName:@"GameViewController" bundle:[NSBundle mainBundle]];
gameView.player = player;
[self.navigationController pushViewController:gameView animated:YES];
[gameView release];