0

我在 iOS 的 Objective-C 中制作了一个简单的文字游戏,我从选择“单视图应用程序”开始,所以我有一个 myProgramViewController.xib 文件,以及 myProgramViewController.h 和 myProgramViewController.m 各一个。我刚刚意识到我想要一个首先加载的主菜单类型的东西,并允许用户选择单词的长度、难度等类似的东西,以及“开始!” 或“开始!” 按钮。如何添加此菜单视图?我宁愿用户不能回到它(现在),所以我宁愿不使用导航栏。

4

2 回答 2

1

上面评论中的上下文。

当 segue 发生时,您可以将任何数据从一个 ViewController 传递到另一个。在你的情况下我会做的是设置一个故事板,让菜单控制器成为初始视图控制器,然后让游戏屏幕成为一个模式segue。在- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender(在您的 MenuViewController 上)中,您可以获得 segue.destinationViewController 并在其上设置数据。

例子:

MenuViewController ---- playGameSegue ----> GameViewController

在 MenuViewController.m

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
    GameViewController * destination = (GameViewController*) sender.destinationViewController;
    destination.anyPropertyYou'veDefinedInGameViewController.h = DATA;
    destination.otherProperty = DATA;
}
于 2012-07-17T18:09:58.067 回答
0

您可以模态地呈现视图。假设您有一个名为 MainMenu 的视图,它有一个 .xib、.h 和 .m 文件。

在您的 myProgramViewController.m 文件中,您可以调用代码

MainMenu *mainMenu = [[MainMenu alloc] initWithNibName:@"MainMenu" bundle:nil];
[self presentModalViewController:mainMenu animated:YES];

然后在您的 MainMenu.m 文件中,一旦用户做出选择,调用:

[self dismissModalViewControllerAnimated:YES];
于 2012-07-17T15:10:05.710 回答