通过另一个视图传递操作

时间:2011-09-16 22:35:05

标签: xcode

我正在努力开发自己的游戏,但是我坚持这个简单的步骤,并希望你们能够照亮我并指导我。

我有两个带xibs的类:其中一个是MainMenu,另一个是MainGame,

在MainMenu中,我有一个切换到MainGame xib的动作按钮。

我的要求是,我想在MainMenu中进行另一个操作,将我带到MainGame,但不是我现有的游戏模式,我想让我们说“硬”模式,这会缩短时间。< / p>

这是我的代码:

timeRemaining2 = 10.0f;

所以,我想知道怎么做的是,如何在MainMenu中设置一个动作按钮,如果单击它,它将带我进入MainGame模式,我可以在其中设置:

if(hardMode) {
timeRemaining2 = 5.0f;
}

1 个答案:

答案 0 :(得分:0)

我不确定你是如何创建和展示你的MainGame视图控制器的,所以我会把这一点留给你。但这里有一个基本的解释,说明如何设置实例变量来设置和保持timeRemaining值。 在MainGame中设置一个实例变量。 MainGame.h

@property float timeRemaining2;

请记住在MainGame.m中合成此内容(免费获取setter和getter)

@sythesize timeRemaining2;

在MainMenu中,设置两个IBAction,并将每个IBAction连接到Interface Builder MainMenu.xib中的相关按钮。然后在你的MainMenu.h中

- (IBAction)easyTapped;
- (IBAction)hardTapped;

在MainMenu.m中,定义调用这些消息时会发生什么:

- (IBAction)easyTapped {
    //instantiate your mainGame view controller, or retrieve it's pointer from self. iVars or however you're doing it.

    mainGame.timeRemaining2 = 10.0f;  //sets the difficulty instance variable 
    //present the mainGame view 
}

- (IBAction)hardTapped {
    //instantiate your mainGame view controller, or retrieve it's pointer from self. iVars

    mainGame.timeRemaining2 = 5.0f;  //sets the difficulty instance variable 
    //present the mainGame view
}