变量值重置为Objective-c/Cocos-2d中的初始化值

变量值重置为Objective-c/Cocos-2d中的初始化值,objective-c,cocos2d-iphone,Objective C,Cocos2d Iphone,我在一个“.h”文件中声明了一个BOOL,并在“.m”中将其初始化为FALSE,然后在一个非常特定的条件下将其设置为TRUE,我希望从那时起它将为TRUE 但是,BOOL值在每一帧都会被重置为初始值FALSE。 每次更新时,当我打印BOOL值的输出时,我得到如下结果: FALSE FALSE FALSE //Condition gets true TRUE FALSE TRUE FALSE TRUE FALSE 我不会在整个代码中的任何其他地方设置BOOL 我对Objective-C有点陌生,

我在一个“.h”文件中声明了一个BOOL,并在“.m”中将其初始化为FALSE,然后在一个非常特定的条件下将其设置为TRUE,我希望从那时起它将为TRUE

但是,
BOOL
值在每一帧都会被重置为初始值FALSE。 每次更新时,当我打印
BOOL
值的输出时,我得到如下结果:

FALSE
FALSE
FALSE
//Condition gets true
TRUE
FALSE
TRUE
FALSE
TRUE
FALSE
我不会在整个代码中的任何其他地方设置BOOL


我对Objective-C有点陌生,所以请帮助我。这与变量的定义方式有关吗?

在为布尔赋值的每一行中设置一个断点。有东西把它设置回否。它背后没有魔法,只是一个编码错误。

似乎你的错误语句是在“计时器”上被调用的,或者是一个被反复调用的函数;你的真实陈述也是如此。检查并确保您的呼叫没有重复,或者尝试将它们放在不同的位置