您的位置:首页 > 移动开发 > Cocos引擎

Android使用cocos2d做简单的平移动画

2015-11-11 17:30 501 查看
首先下载android版的cocos2d驱动程序,可以到这里下载http://download.csdn.net/detail/lvshaorong/9260655

本文相当于此框架的最小化版本

在myeclicpse中导入这个android项目,并把其作为库导入到自己的项目中去;

写一个Activity,如下
import org.cocos2d.layers.CCScene;
import org.cocos2d.nodes.CCDirector;
import org.cocos2d.nodes.CCSprite;
import org.cocos2d.opengl.CCGLSurfaceView;

import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
import android.view.WindowManager;

public class MainActivity extends Activity {
private CCGLSurfaceView mGLSurfaceView;
//精灵对象
CCSprite grossini;
@Override
protected void onCreate(Bundle savedInstanceState) {
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);
CCDirector director = CCDirector.sharedDirector();
director.attachInView(mGLSurfaceView);
director.setDeviceOrientation(CCDirector.kCCDeviceOrientationLandscapeLeft);
setContentView(mGLSurfaceView);//没有layout了,全屏游戏

// show FPS是否显示fps,一般不用
CCDirector.sharedDirector().setDisplayFPS(false);

// frames per second,每秒帧数
CCDirector.sharedDirector().setAnimationInterval(1.0f / 30);

CCScene scene = CCScene.node();
scene.addChild(new XiaoRen());//添加一个精灵

// Make the Scene active
CCDirector.sharedDirector().runWithScene(scene);
}

}


然后建立一个精灵对象

import org.cocos2d.actions.interval.CCIntervalAction;
import org.cocos2d.actions.interval.CCMoveBy;
import org.cocos2d.layers.CCLayer;
import org.cocos2d.nodes.CCDirector;
import org.cocos2d.nodes.CCSprite;
import org.cocos2d.types.CGPoint;
import org.cocos2d.types.CGSize;

public class XiaoRen extends CCLayer {
CCSprite grossini;

public XiaoRen() {
// TODO Auto-generated constructor stub

CGSize s = CCDirector.sharedDirector().winSize();
grossini = CCSprite.sprite("grossini.png");
addChild(grossini, 1);
grossini.setPosition(CGPoint.make(60, s.height / 2));//设置初始位置,x轴为60,y轴为高度的三分之一

}

@Override
public void onEnter() {//一上来就执行
super.onEnter();
CCIntervalAction actionBy = CCMoveBy.action(2, CGPoint.make(580, 0));//设置要移动到哪里去,这个是相对于初始位置的偏移值
grossini.runAction(actionBy);//执行平移动画
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: