我环顾四周,我已经看到关于如何将UIKit与cocos2d集成在一起的非常少的材料(注意:不是相反的方式)。我的意思是...例如...在UIView中添加一个椰子精灵动画,它放置在分割视图控制器(作为子视图)内。我怎样才能做到这一点!?将Cocos2D与UIKit集成
我想从UISplitView项目模板或UITabBar项目模板开始。
p.s.我已经做了一段时间的iPhone开发,但是当谈到cocos2d框架时,我是一个noob。
我环顾四周,我已经看到关于如何将UIKit与cocos2d集成在一起的非常少的材料(注意:不是相反的方式)。我的意思是...例如...在UIView中添加一个椰子精灵动画,它放置在分割视图控制器(作为子视图)内。我怎样才能做到这一点!?将Cocos2D与UIKit集成
我想从UISplitView项目模板或UITabBar项目模板开始。
p.s.我已经做了一段时间的iPhone开发,但是当谈到cocos2d框架时,我是一个noob。
在Cocos2d中有一个名为AttachDemo
的演示,它将Cocos2d控制器连接到UIView
。如果您检查名为-(void)runCocos2d
的方法。
如果你看一下它的代码,它执行以下操作:
-(void) runCocos2d
{
if(state == kStateEnd) {
EAGLView *glview = [EAGLView viewWithFrame:CGRectMake(0, 0, 250,350)];
[mainView addSubview:glview];
CCDirector *director = [CCDirector sharedDirector];
[director setOpenGLView:glview];
CCScene *scene = [CCScene node];
id node = [LayerExample node];
[scene addChild: node];
[director runWithScene:scene];
state = kStateRun;
}
else {
NSLog(@"End the view before running it");
}
}
正如你所看到的,你需要创建一个EAGLView
,附加一个导演,然后简单地认为视图添加到视图层次结构。
好极了!但是,如果我在TabBar控制器中,每个控制器包含一个EAGLView,或者我的UIView中有多个EAGLViews?导演是否保留所有观点的记录?而且,我可以运行一些场景并阻止其他人吗?谢谢。 – Mustafa 2011-04-07 04:38:11
你可以做什么,是切换到另一个选项卡后,调用'[director setOpenGLView:glview];'在选项卡的主视图上,并在那里设置场景。您将使用多个'EAGLView's,但只有一个'CCDirector'。 – pgb 2011-04-07 13:47:04
你有链接到这个演示?我似乎无法找到它 – 2011-09-01 20:23:09