场景切换(附Demo)

在MC中切换场景主要有两种:
一种是利用活动区域来切换(这时需要移动view框来控制显示是区域),另一种是通过脚本编写代码来实现场景的切换。
活动区域切换场景比较适合简单的界面间切换,脚本代码切换场景适用于复制的界面切换(如多个层次的界面切换)

一、这里先简单介绍一下如何使用活动区域来实现场景的切换
1.创建一个活动区域,将活动区域拉伸到需要的大小
2.在活动区域的范围内摆放角色
3.但要显示时将view框移动要活动区域上即可显示
即当view框与活动区域框重叠时可以在屏幕中显示出活动区域框所覆盖的相应角色
详细内容请参考 MC新手入门(三)------活动区域  

二、使用脚本代码创建切换场景
利用代码创建切换场景主要步骤为:
1.销毁前一个场景(根据需要销毁)
2.创建当前想要显示的场景
3.重复1、2两个步骤

如Demo中场景一的全局脚本代码:

//创建场景一
void CreateSceneOneFrame()
{
       Actor *bgActor = 0;
       Actor *txtActor = 0;
       Actor *btnActor = 0;

        //背景
        bgActor = CreateActor("actBgOne","anim_background_CardShop","","",0,0,true);
        bgActor->x = 0;
        bgActor->y = 0;

        //场景一字幕
        txtActor = CreateActor("actText1","icon","","",0,0,true);
        txtActor->x = -42;
        txtActor->y = -84;

        //说明字幕
        txtActor = CreateActor("actText3","icon","","",0,0,true);
        txtActor->x = -80;
        txtActor->y = -35;

        //按钮
        btnActor = CreateActor("BtnAct_View2","btnImg_MAll_Right","","",0,0,true);
        btnActor->x = 0;
        btnActor->y = 20;
}
//销毁场景一
void DestroySceneOneFrame()
{
        DestroyActor("actBgOne");
        DestroyActor("actText1");
        DestroyActor("actText3");
        DestroyActor("BtnAct_View2");
}

比如从场景二切换到场景一时先销毁场景二再创建场景一,调用代码如下:
DestroySceneTwoFrame();
CreateSceneOneFrame();
具体细节请参照Demo中的用法

相关Demo如下:http://www.dongyo.cn/bbs/forum.php?mod=viewthread&tid=3497&extra=page%3D1

posted @ 2013-05-21 15:10  zj_king  阅读(298)  评论(0编辑  收藏  举报