Bitmap位图随触摸点移动
来源:互联网 发布:网站特效可以什么源码 编辑:程序博客网 时间:2024/05/21 06:22
- package xiaosi.bitmap;
-
- import android.app.Activity;
- import android.os.Bundle;
-
- public class mianActivity extends Activity
- {
-
- private surfaceView bitmapView = null;
- @Override
- protected void onCreate(Bundle savedInstanceState)
- {
- super.onCreate(savedInstanceState);
- bitmapView = new surfaceView(this);
- setContentView(bitmapView);
- }
- }
surfaceView surfaceView .Java
- package xiaosi.bitmap;
-
- import java.io.InputStream;
-
- import android.content.Context;
- import android.content.res.Resources;
- import android.graphics.Bitmap;
- import android.graphics.Canvas;
- import android.graphics.Color;
- import android.graphics.drawable.BitmapDrawable;
- import android.view.MotionEvent;
- import android.view.SurfaceHolder;
- import android.view.SurfaceView;
-
-
- public class surfaceView extends SurfaceView{
-
- private SurfaceHolder surfaceHolder;
- private Canvas canvas = null;
-
- private float x=0,y=0;
- private Bitmap bitmap = null;
-
- public surfaceView(Context context) {
- super(context);
-
- surfaceHolder = this.getHolder();
-
- this.setKeepScreenOn(true);
-
- Resources res=getResources();
-
- InputStream inputStream=res.openRawResource(R.drawable.h);
-
- BitmapDrawable bitmapDrawable=new BitmapDrawable(inputStream);
-
- bitmap=bitmapDrawable.getBitmap();
-
-
-
-
-
-
- }
-
-
- private void onDraw() {
- try {
-
- canvas = surfaceHolder.lockCanvas();
-
- canvas.drawColor(Color.GREEN);
-
-
- canvas.drawBitmap(bitmap, x-bitmap.getWidth()/2, y-bitmap.getHeight()/2, null);
- } catch (Exception ex) {
- } finally {
- if (canvas != null)
-
- surfaceHolder.unlockCanvasAndPost(canvas);
- }
- }
-
- public boolean onTouchEvent(MotionEvent event){
- x = event.getX();
- y = event.getY();
- onDraw();
- return true;
- }
-
- }
0 0