如何将变量传递给其他方法?

时间:2012-03-13 14:01:37

标签: objective-c

我知道这是一个非常初学的问题,但我一直在努力解决这个问题。

我正在尝试构建iOS游戏(使用cocos2d),所以我有2套文件

GameScene.h和gameScene.m MainMenu1.h和MainMenu1.m

GameScene拥有我倾向于放入的共享代码。

我调用我的MainMenu1 - 用户从MenuItemwithImage中选择多少玩家并调用ChoosePlayers

我可以弄清楚触摸了哪个菜单项,但我需要将玩家数量传回GameScene

在GameScene中我输入了

-(void) setPlayers (nsinteger*) players
{
totalplayers = players;
}

所以在mainmenu1选择玩家我做了

[[GameScene SharedGameData] setPlayers : 2];

但这不起作用。

对不起,我没有在我面前的代码(直到今晚);我一直在寻找几个小时,但无法理解。

2 个答案:

答案 0 :(得分:3)

您的方法格式不正确。它应该是:

-(void)setPlayers:(NSInteger)players;

NSInteger也不是指针。

要传递multiplie值,您可以传入一个数组,或者:

-(void)setPlayers:(NSInteger)firstValue withSecondValue:(NSInteger)secondValue;当你想要调用它时,它看起来像这样:

[[GameScene SharedGameData] setPlayers:2 withSecondValue:4];

答案 1 :(得分:0)

嗨,如果你能发布一些关于你收到的错误的详细信息(如果有的话)会很好,这可以帮助诊断问题,但看着你的代码,我认为你需要改变

-(void) setPlayers (nsinteger*) players

要      - (void)setPlayers:(nsinteger *)玩家

希望这有帮助!