IOS工程+cocos2d-x工程(跳转、代码对接篇)

IOS工程+cocos2d-x工程(工程整理篇):

http://www.jianshu.com/p/120650a22912

之前写了关于游戏工程和现有工程整合的,up现在也没完全搞好,现在补一发其他代码整合的,慢慢更新中


1,首先问题的关键是怎么启动,我的APP需求是在课程的详情页启动的,然后启动时需要c的代码,混合代码编译的话是需要在.mm文件,这里我在做demo的时候就直接利用原有文件了,首先观察原有代码:

   这里显然是创建 eaglView,然后创建一个ViewController进去,再run启动即可.所以我们在需要跳转的页面进行创建,好了再启动

IOS工程+cocos2d-x工程(跳转、代码对接篇)_第1张图片
显然这是启动部分,分析里面具体做什么用的后进行整理

2,在跳转页面创建eaglView,然后跳转。这里我用的是navigationController,APP默认的是竖屏,所以先要设置可以横屏,旋转过来,然后再跳转,顺序不能错!

(1)在AppDelegate里面添加横竖屏设置


IOS工程+cocos2d-x工程(跳转、代码对接篇)_第2张图片
添加横竖屏设置

 (2)在需要跳转的文件引入头文件

引入头文件

 (3)创建View,跳转


IOS工程+cocos2d-x工程(跳转、代码对接篇)_第3张图片

(4)启动游戏

到此,游戏应该就启动成功了,当然,你可以依据你的需求设置不同的游戏id,资源路径去启动不同的游戏,我这个例子是启动特定的游戏的

附上:如何在IOS平台上使用js直接调用OC方法

http://www.cocos.com/doc/article/index?type=cocos2d-x&url=/doc/cocos-docs-master/manual/framework/html5/v3/reflection-oc/zh.md


3游戏退出部分,我找了工程里面,早coco2dx中可以调用文件的静态方法,所以可以暂时的解决方法给了出来,但是再次启动有问题,目前正在处理中:

(1)调用方法

IOS工程+cocos2d-x工程(跳转、代码对接篇)_第4张图片

(2)关闭游戏,返回APP之前界面


IOS工程+cocos2d-x工程(跳转、代码对接篇)_第5张图片

(3)返回跳转

IOS工程+cocos2d-x工程(跳转、代码对接篇)_第6张图片

到这里大家可以看到为什么我用的是push的方法,因为返回的时候要调用静态方法,我用的又是navigationController,总体来时基本流程跑通了

其实还有很多细节的要处理,主要是游戏的进入,APP退出到桌面,游戏退出,游戏重新打开这些,就不一一写出来了

up1周以后对上面的很多代码进行了修改,其实跳转旋转屏幕的时候有问题,后面待续

你可能感兴趣的:(IOS工程+cocos2d-x工程(跳转、代码对接篇))