您的位置:首页 > 其它

菜单的创建

2016-07-27 17:51 351 查看
参照这个 http://blog.csdn.net/xyz_fly/article/details/7441443

public class MainActivity extends BaseGameActivity{
private static final int CAMERA_WIDTH = 800;
private static final int CAMERA_HEIGHT = 480;
private Camera mCamera;
private BitmapTextureAtlas
fonttexture,buttontexture,bgt;
private TextureRegion buttonbg,bg;
private Scene menuscene;
private Font font;
Scene scene;
Text text1,text2,text3;
ButtonSprite buttonsprite;
@Override
public EngineOptions onCreateEngineOptions() {
// TODO 自动生成的方法存根
mCamera=new Camera(0, 0, CAMERA_WIDTH, CAMERA_HEIGHT);
EngineOptions mEngineOptions=new EngineOptions(true,
ScreenOrientation.LANDSCAPE_FIXED, 
new RatioResolutionPolicy(CAMERA_WIDTH, CAMERA_HEIGHT),
mCamera);
return mEngineOptions;
}

@Override
public void onCreateResources(OnCreateResourcesCallback
arg0)
throws Exception {
// TODO 自动生成的方法存根
fonttexture=new BitmapTextureAtlas(getTextureManager(), 256,
256);
font=new Font(getFontManager(),
fonttexture, 
Typeface.create(Typeface.DEFAULT, Typeface.BOLD), 32, true,
Color.RED);
fonttexture.load();
font.load();
buttontexture=new BitmapTextureAtlas(getTextureManager(), 100,
66);

buttonbg=BitmapTextureAtlasTextureRegionFactory.createFromAsset(buttontexture,
getAssets(), "ass.jpg",
0,0);
buttontexture.load();
bgt=new BitmapTextureAtlas(getTextureManager(), 1000,
666);
bg=BitmapTextureAtlasTextureRegionFactory.createFromAsset(bgt,
getAssets(), "miss.JPG", 0, 0);
bgt.load();
arg0.onCreateResourcesFinished();
}

@Override
public void onCreateScene(OnCreateSceneCallback arg0) throws
Exception {
// TODO 自动生成的方法存根
scene=new Scene();
float centerX=(CAMERA_WIDTH-bg.getWidth())/2;
float centerY=(CAMERA_HEIGHT-bg.getHeight())/2;
Sprite menuback=new Sprite(centerX, centerY, bg,
getVertexBufferObjectManager());
scene.attachChild(menuback);
     
  buttonsprite=new ButtonSprite(0, 0, buttonbg,
getVertexBufferObjectManager());
buttonsprite.setOnClickListener(new OnClickListener() {
@Override
public void onClick(ButtonSprite arg0, float arg1, float arg2)
{
// TODO 自动生成的方法存根
Log.i("aa", "aaa");
scene.detachChild(buttonsprite);
scene.setChildScene(menuscene);
}
});
scene.attachChild(buttonsprite);
scene.registerTouchArea(buttonsprite);
createmenu();
arg0.onCreateSceneFinished(scene);
}

@Override
public void onPopulateScene(Scene arg0,
OnPopulateSceneCallback arg1)
throws Exception {
// TODO 自动生成的方法存根
arg1.onPopulateSceneFinished();
}
public void createmenu(){
menuscene=new Scene();
  ButtonSprite button1=new ButtonSprite(100,
100, buttonbg, getVertexBufferObjectManager());
  text1=new Text(0,0, font, "button1",
getVertexBufferObjectManager());
button1.attachChild(text1);
button1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(ButtonSprite arg0, float arg1, float arg2)
{
// TODO 自动生成的方法存根
Log.i("1", "button1");
}
});
 ButtonSprite button2=new ButtonSprite(100,
200, buttonbg, getVertexBufferObjectManager());
 text2=new Text(0,0, font, "button2",
getVertexBufferObjectManager());
 button2.attachChild(text2);
button2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(ButtonSprite arg0, float arg1, float arg2)
{
// TODO 自动生成的方法存根
Log.i("2", "button2");
}
});
ButtonSprite button3=new ButtonSprite(100, 300, buttonbg,
getVertexBufferObjectManager());
text3=new Text(0,0, font, "button3",
getVertexBufferObjectManager());
button3.attachChild(text3);
button3.setOnClickListener(new OnClickListener() {
@Override
public void onClick(ButtonSprite arg0, float arg1, float arg2)
{
// TODO 自动生成的方法存根
scene.clearChildScene();
scene.attachChild(buttonsprite);
Log.i("3", "button3");
}
});
   
menuscene.attachChild(button1);menuscene.registerTouchArea(button1);

menuscene.attachChild(button2);menuscene.registerTouchArea(button2);

menuscene.attachChild(button3);menuscene.registerTouchArea(button3);
menuscene.setBackgroundEnabled(false);
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: