Cocos3D - 点表示法的'May not respond'警告



>我正在使用Cocos3D,这个函数给我一个"可能无法响应"警告:

[CClayer.CC3scene someFunctionFromCC3scene];

我知道解决这个问题的一种方法是在CCLayer有一个FunctionCC3scene打电话给someFunctionFromCC3scene。但是还有其他方法可以做到这一点吗?谢谢!

更有可能的是,您没有导入相应的标头。例如 #import"CC3Scene.h"。我想如果 CC3scene 属性的返回类型是 id 而不是实际类,就会发生这种情况。

或者编译器对此是正确的,当您运行它时,它会崩溃并显示"不响应选择器"。在这种情况下,CC3Scene 不会实现someFunctionFromCC3scene选择器。检查拼写和参数,当然,类实际上实现了该选择器并在@interface中声明了它。

从您的示例来看,有几件事可能会出错:

您可能会将CCLayerCC3Layer混淆。 CC3Layer 是支持显示 3D 场景的CCLayer子类。确保您正在实例化CC3Layer

如果您确实在使用CC3Layer并且 CC3Scene 属性(实际上是cc3Scene)返回CC3Scene的实例,那么,正如 LearnCocos2D 所示,验证您正在调用的方法是否确实存在于 CC3Scene 类中。如果您在此处提供特定的方法名称,那么我可以提供进一步的帮助。

如果someFunctionFromCC3Scene实际上是在自定义子类中定义和实现的,则应在调用该方法之前将CC3Scene实例强制转换为自定义子类:

[((MyCC3Scene*)aCC3Layer.cc3Scene) someFunctionFromMyCC3Scene];

。法案

相关内容

  • 没有找到相关文章

最新更新