cocos-x-3.2 之 AppDelegate 的调用 (IOS)

来源:互联网 发布:机顶盒有线网络设置 编辑:程序博客网 时间:2024/06/06 09:13

         初学 cocos2d-x。环境配置完毕,用cocos new生成了示例项目 MyCppGame。

         目录结构如下:                

                       [cocos-2d-x目录]

        试着运行了一次,显示代码调用到了AppDelegate 类,进行了场景HelloWoldScene类的初始化和绘制。但AppDelegate如何被调用的呢,在AppControl.m中开始只有一行代码"static AppDelegate s_shareAppdelegate;"... ... 在这个问题上卡住了。然后因为忙项目,在时隔三天后才能再来考虑这个问题。

        关键在于看一下AppDelegate的基类 -- Application

而在Application中有如下代码:

<pre name="code" class="cpp">Application* Application::sm_pSharedApplication = 0;Application::Application(){    CC_ASSERT(! sm_pSharedApplication);    sm_pSharedApplication = this;}... ...Application* Application::getInstance(){    CC_ASSERT(sm_pSharedApplication);    return sm_pSharedApplication;}
        看到这里,我想大家应该都明白了吧 

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
        函数中得调用:
cocos2d::Application::getInstance()->run();


        以上结果的来源竟然是mac部分的代码,如下(早看早知道):
int main(int argc, char *argv[]){    AppDelegate app;    return Application::getInstance()->run();}
0 0
原创粉丝点击