Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/93.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iPhone Cocos2D-在哪里加载代码?_Iphone_Ios_Cocoa_Ipad_Cocos2d Iphone - Fatal编程技术网

iPhone Cocos2D-在哪里加载代码?

iPhone Cocos2D-在哪里加载代码?,iphone,ios,cocoa,ipad,cocos2d-iphone,Iphone,Ios,Cocoa,Ipad,Cocos2d Iphone,我开始学习iPhone的CoCo2D。我看到基本模板有一个viewController,但当它运行时,它会加载HelloWorldLayer,而不是viewController视图 当您使用viewController时,您曾经在.m上拥有该控制器的主逻辑,但是由于Cocos2D以另一种方式工作,我想知道应该将主逻辑代码放在哪里 我的意思是这个。使用Cocos2D开发时,我将拥有一堆这些“层”文件,当我经过场景时,其中一个文件将在某个时间处于活动状态,但现在想象一下,我正在构建一个包含应用内购买

我开始学习iPhone的CoCo2D。我看到基本模板有一个viewController,但当它运行时,它会加载HelloWorldLayer,而不是viewController视图

当您使用viewController时,您曾经在.m上拥有该控制器的主逻辑,但是由于Cocos2D以另一种方式工作,我想知道应该将主逻辑代码放在哪里

我的意思是这个。使用Cocos2D开发时,我将拥有一堆这些“层”文件,当我经过场景时,其中一个文件将在某个时间处于活动状态,但现在想象一下,我正在构建一个包含应用内购买或coredata的应用程序。我必须有一个中心位置,在那里处理销售和数据库的通用逻辑应该驻留。最佳实践在哪里?要将其放在viewController上,Cocos2D会创建什么?你是怎么做到的

我应该将代码放在哪里,以便在应用程序运行时和显示第一个场景之前进行初始化


谢谢

Cocos2D中的启动代码位于应用程序委托ApplicationIDFinishLaunching方法中。因此,您可能需要在那里初始化加载代码

您遇到的问题可能是由于Cocos2D对视图控制器的设置不正确,导致无法调用视图控制器的viewDidLoad方法。您可以从ApplicationIDFinishLaunching手动调用它,但是,在以下行之后:
rootViewController.view=glView


您可以在这里找到许多教程,这些教程对这一点有更多的帮助:

谢谢。你说的人工呼叫是什么意思?在ApplicationIDFinishLaunching结束时,我看到[viewController setView:glView],然后看到[window addSubview:viewController.view],即使如此,viewController的viewDidLoad也没有被调用。。。有什么想法吗?谢谢。这是因为Cocos2D没有遵循以下准则:要解决这个问题,只需在这一行之后调用viewDidLoad:rootViewController.view=glView;[rootViewController viewDidLoad];