Android学习笔记之Bitmap位图虽触摸点移动

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

               

package xiaosi.bitmap;import android.app.Activity;import android.os.Bundle;public class mianActivity extends Activityprivate 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// 控制surface的接口,提供了控制surface的大小、格式、像素 private SurfaceHolder surfaceHolder; private Canvas canvas = null// x y用户才触摸屏幕的坐标 private float x=0,y=0private Bitmap bitmap = nullpublic surfaceView(Context context) {  super(context);  // 获取SurfaceHolder接口  surfaceHolder = this.getHolder();  // 设置屏幕保持开启状态  this.setKeepScreenOn(true);  // 获取资源文件res  Resources res=getResources();  // 获取位图资源文件的输入流  InputStream inputStream=res.openRawResource(R.drawable.h);  // 创建可绘制的位图对象  BitmapDrawable bitmapDrawable=new BitmapDrawable(inputStream);  // 通过可绘制位图对象得到位图引用  bitmap=bitmapDrawable.getBitmap();  /*   * // 获取资源文件的引用res          Resources res = getResources();          // 获取图形资源文件          Bitmap bmp = BitmapFactory.decodeResource(res, R.drawable.h);     */ } //绘制位图 private void onDraw() {  try {   // 锁定Canvas画布   canvas = surfaceHolder.lockCanvas();   // 设置canvas画布背景为黑色   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;   }}


 

           

给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow

这里写图片描述

猜你喜欢

转载自blog.csdn.net/sdfsdfytre/article/details/84137152