1. 程式人生 > >Android學習筆記之Bitmap點陣圖雖觸控點移動

Android學習筆記之Bitmap點陣圖雖觸控點移動

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

也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!

               

 

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// 控制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

這裡寫圖片描述