首页 > IOS频道 > 【Cocos2D研究院之游戏开发】 > Cocos2D研究院之打开全新ViewController与返回(八)
2012
11-19

Cocos2D研究院之打开全新ViewController与返回(八)

         之前cocos2d的文章都是由魏凯同学维护,从今天开始我也会抽时间写点cocos2d的文章。最近在研究如何将IOS游戏与软件结合起来。通常游戏开发中仅仅只需要一个ViewController即可,所有的图片动画渲染、场景的切换都是在这一个ViewControlelr中完成。但是软件开发中每一个界面都会是一个ViewController,为什么游戏和软件这点上区别很大呢?原因很简单,游戏属于自定义View 而软件需要借助系统提供的高级控件,这些高级控件也就是系统封装的View。比如Label、Button、ImageView 等等。。

          大家可以仔细看一下cocos2d的源码,先找到入口函数我和大家分析一下。

 在方法中找到下面 ,CCDirector继承于ViewController,cocos2d的OpenGlView也是添加在这个ViewController之上。

        接着往下走,我们可以看到这段代码,意思就是将游戏的viewcontroller加在一个带导航栏的viewController之上,然后隐藏这个导航栏。 最后把这个这个viewController加在windows中。

        下面我们分析一下,IOS程序在切换ViewController的时候必需要用UINavigationController  ,cocos2d的UINavitionController 就是  [CCDirector sharedDirector].navigationController

         然后我们做一个简单的例子,大家就明白了如何来使用。创建两个游戏场景,如下图所示,这是第一个游戏场景,第二个游戏场景我就不在截图。左下角是一个cocos2d的按钮,点击该按钮后将从cocos2d切换至全新的viewcontroller当中。

 

Cocos2D研究院之打开全新ViewController与返回(八) - 雨松MOMO程序研究院 - 1

 

如下图所示,在cocos2d中打开的新的viewController,此时cocos2d中的动画循环事件都会自动暂停,直到从新返回cocos2d的游戏当中即可从新打开。

Cocos2D研究院之打开全新ViewController与返回(八) - 雨松MOMO程序研究院 - 2

 

代码比较简单我就不做过多的解释了,仔细看看就应该明白啦。 

 

切换场景的特效方式都可以以这样的方法来添加,快快把游戏和软件结合起来吧。

代码下载: http://vdisk.weibo.com/s/ioMx4

最后编辑:
作者:雨松MOMO
专注移动互联网,Unity3D游戏开发
捐 赠写博客不易,如果您想请我喝一杯星巴克的话?就进来看吧!

Cocos2D研究院之打开全新ViewController与返回(八)》有 17 条评论

  1. 张雪蕊 说:

    cannot specify -o when generating multiple output files 这个问题怎么解决,我是把unity岛成Xcode
    的文件放到我的Xcode project里面了,调整过arc兼容,配置,之后爆出的错误。。。要怎么解决

  2. 求转发,求拥抱….哈哈..

  3. 我爱旅游 说:

    支持哈

留下一个回复

你的email不会被公开。