andengine 的几个入门例子(sprite remove example)
package com.example.spriteexample; import android.os.Bundle; import android.app.Activity; import android.view.Menu; import org.anddev.andengine.engine.Engine; import org.anddev.andengine.engine.camera.Camera; import org.anddev.andengine.engine.options.EngineOptions; import org.anddev.andengine.engine.options.EngineOptions.ScreenOrientation; import org.anddev.andengine.engine.options.resolutionpolicy.RatioResolutionPolicy; import org.anddev.andengine.entity.scene.Scene; import org.anddev.andengine.entity.scene.Scene.IOnSceneTouchListener; import org.anddev.andengine.entity.scene.background.ColorBackground; import org.anddev.andengine.entity.sprite.Sprite; import org.anddev.andengine.entity.util.FPSLogger; import org.anddev.andengine.input.touch.TouchEvent; import org.anddev.andengine.opengl.texture.TextureOptions; import org.anddev.andengine.opengl.texture.atlas.bitmap.BitmapTextureAtlas; import org.anddev.andengine.opengl.texture.atlas.bitmap.BitmapTextureAtlasTextureRegionFactory; import org.anddev.andengine.opengl.texture.region.TextureRegion; import org.anddev.andengine.ui.activity.BaseGameActivity; public class MainActivity extends BaseGameActivity implements IOnSceneTouchListener { final static int camera_width=720; final static int camera_height = 480; public Camera camera; public Engine engine; public BitmapTextureAtlas bitmaptextureatlas; TextureRegion face_box; TextureRegion box_face; Sprite face; Sprite box; float x,y; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //setContentView(R.layout.activity_main); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.activity_main, menu); return true; } @Override public Engine onLoadEngine() { camera = new Camera (0,0, camera_width, camera_height); // TODO Auto-generated method stub return new Engine(new EngineOptions(true, ScreenOrientation.LANDSCAPE, new RatioResolutionPolicy(camera_width, camera_height), camera)); } @Override public void onLoadResources() { bitmaptextureatlas = new BitmapTextureAtlas(64, 32, TextureOptions.BILINEAR_PREMULTIPLYALPHA); BitmapTextureAtlasTextureRegionFactory.setAssetBasePath("gfx/"); face_box = BitmapTextureAtlasTextureRegionFactory.createFromAsset(this.bitmaptextureatlas, this, "face_box.png", 0, 0); box_face = BitmapTextureAtlasTextureRegionFactory.createFromAsset(this.bitmaptextureatlas, this, "box.png", 32, 0); this.mEngine.getTextureManager().loadTexture(this.bitmaptextureatlas); // TODO Auto-generated method stub } @Override public Scene onLoadScene() { Scene scene = new Scene(); scene.setBackground(new ColorBackground(0.1f,0.5f,0.6f)); final int centerX = (camera_width - this.face_box.getWidth()) / 2-50; final int centerY = (camera_height - this.face_box.getHeight()) / 2; final int centerX1 = (camera_width - this.box_face.getWidth()) / 2+50; final int centerY1 = (camera_height - this.box_face.getHeight()) / 2; face = new Sprite(centerX,centerY,this.face_box); box = new Sprite(centerX1,centerY1,this.box_face); scene.attachChild(face); scene.attachChild(box); scene.setOnSceneTouchListener(this); // TODO Auto-generated method stub return scene; } @Override public void onLoadComplete() { // TODO Auto-generated method stub } @Override public boolean onSceneTouchEvent(final Scene pScene, TouchEvent pSceneTouchEvent) { // TODO Auto-generated method stub if(pSceneTouchEvent.isActionDown()) { x = pSceneTouchEvent.getX(); y = pSceneTouchEvent.getY(); this.runOnUpdateThread(new Runnable() { public void run() { if(face.contains(x, y)) { pScene.detachChild(face); } else if(box.contains(x, y)) { pScene.detachChild(box); } } }); } return true; } }