Cocos2D-Android-1之源码详解:2. actionmanagertest

//现在我们开始注释,他的第一个activity

package org.cocos2d.tests;


import org.cocos2d.actions.CCActionManager;

import org.cocos2d.actions.base.CCAction;

import org.cocos2d.actions.instant.CCCallFunc;

import org.cocos2d.actions.instant.CCCallFuncN;

import org.cocos2d.actions.interval.CCDelayTime;

import org.cocos2d.actions.interval.CCFadeOut;

import org.cocos2d.actions.interval.CCMoveBy;

import org.cocos2d.actions.interval.CCRotateBy;

import org.cocos2d.actions.interval.CCScaleBy;

import org.cocos2d.actions.interval.CCScaleTo;

import org.cocos2d.actions.interval.CCSequence;

import org.cocos2d.layers.CCLayer;

import org.cocos2d.layers.CCScene;

import org.cocos2d.menus.CCMenu;

import org.cocos2d.menus.CCMenuItemImage;

import org.cocos2d.nodes.CCDirector;

import org.cocos2d.nodes.CCLabel;

import org.cocos2d.nodes.CCNode;

import org.cocos2d.nodes.CCSprite;

import org.cocos2d.opengl.CCGLSurfaceView;

import org.cocos2d.opengl.CCTextureAtlas;

import org.cocos2d.types.CGPoint;

import org.cocos2d.types.CGSize;


import android.app.Activity;

import android.os.Bundle;

import android.view.Window;

import android.view.WindowManager;


//There is a downloadable demo>//private static final String LOG_TAG=ActionManagerTest.class.getSimpleName();

//上面注释本来想获取包名

public static final int kTagNode=0;//

public static final int kTagGrossini=1;

public static final int kTagSister=2;

public static final int kTagSlider=3;

public static final int kTagSequence=4;


private CCGLSurfaceView mGLSurfaceView;//这个ccg的view是opengl中的类,最终还是继承了sufaceview,先不做详细解释


@Override

protected void>super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_NO_TITLE);//没有标题

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,

WindowManager.LayoutParams.FLAG_FULLSCREEN);//全屏

getWindow().setFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON,//保持不暗不关闭 

WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);


mGLSurfaceView=new CCGLSurfaceView(this);//产生这个avtivity下的surfaceview

CCDirector director=CCDirector.sharedDirector();//获得“导演”

director.attachInView(mGLSurfaceView);//把背景给导演,导演一会把数据画上去

director.setDeviceOrientation(CCDirector.kCCDeviceOrientationLandscapeLeft);//横屏显示

setContentView(mGLSurfaceView);//展示出这个view


//show FPS

CCDirector.sharedDirector().setDisplayFPS(true);//显示fps分辨率


//frames per second

CCDirector.sharedDirector().setAnimationInterval(1.0f/30);//设置动画多少秒刷一帧


CCScene scene=CCScene.node();//获得一个场景

scene.addChild(nextAction());//给场景添加一个子类


//Make the Scene active

CCDirector.sharedDirector().runWithScene(scene);//导演开始放映


}


static int sceneIdx=-1;

static Class<?> 转换[]={

CrashTest.class,

LogicTest.class,

PauseTest.class,

RemoveTest.class,

Issue835.class,

};


@Override

公共空> super.onStart ();


}


@Override

公共空> super.onPause ();


CCDirector.sharedDirector () .onPause ();

}


@Override

公共空> super.onResume ();


CCDirector.sharedDirector () .onResume ();

}


@Override

公共空> super.onDestroy ();


CCDirector.sharedDirector()指标();最终

//CCTextureCache.sharedTextureCache () .removeAllTextures ();

}


//,

//行动

//,

静态CCLayer nextAction(){//实现的图层


sceneIdx + +,//动画帧

sceneIdx=sceneIdx % transitions.length;//让动画的图层帧始终循环,比如0 - 1 - 2 -》》》3 - 4》


返回restartAction();//返回的是另一个类的属性,上述变量是全局静态变量

}


静态CCLayer backAction(){//同理回退一个图层

sceneIdx,

int总=transitions.length;

如果sceneIdx & lt;0)

sceneIdx总额+=,

返回restartAction ();}


静态CCLayer restartAction () {

尝试{

Class<?比;c=转换(sceneIdx);//按照数值计算显示的图层

返回(CCLayer) c.newInstance();//返回显示的图层

}捕捉(异常e) {

返回null;

}

}

Cocos2D-Android-1之源码详解:2. actionmanagertest