Class 在不同类中调用方法

Class 在不同类中调用方法,class,methods,cocos2d-iphone,move,Class,Methods,Cocos2d Iphone,Move,这个问题和那个问题有点相似 但区别在于我使用的是cocos2d。 我在AppDelegate中有一个名为screenshot的方法。它显然是用来截图的。我想在另一个类中调用这个方法,但只是做[自我截图];不起作用,因为我收到警告“GameOver”我的不响应-屏幕截图 我只想在GameOver中调用screenshot方法 谢谢 不能调用不存在的方法-它将生成运行时错误 如果要从GameOver调用AppDelegate的方法,如果该方法不是静态的,则应具有指向AppDelegate对象的指针:

这个问题和那个问题有点相似

但区别在于我使用的是cocos2d。 我在AppDelegate中有一个名为screenshot的方法。它显然是用来截图的。我想在另一个类中调用这个方法,但只是做[自我截图];不起作用,因为我收到警告“GameOver”我的不响应-屏幕截图

我只想在GameOver中调用screenshot方法


谢谢

不能调用不存在的方法-它将生成运行时错误

如果要从GameOver调用AppDelegate的方法,如果该方法不是静态的,则应具有指向AppDelegate对象的指针:

[appDelegatePointer screenshot];
如果方法是静态的

[AppDelegate screenshot];
我假设您只有一个对象AppDelegate,您可以创建一个静态方法

+(AppDelegate) sharedDelegate;
将返回对象单例的AppDelegate类的。因此,您可以从GameOver对象或任何其他类似的地方调用
屏幕截图
方法:

[[AppDelegate sharedDelegate] screenshot];
这样的事情是在CCDirector、CCTextureCache、SimpleAudioEngine。。。Cocos2D中的类