// GameView.drawImage(canvas, mBitDestTop, miDTX, mBitQQ.getHeight(), mBitDestTop.getWidth(), mBitDestTop.getHeight()/2, 0, 0); public static void drawImage(Canvas canvas, Bitmap blt, int x, int y, int w, int h, int bx, int by) { //x,y表示繪畫的起點, Rect src = new Rect();// 圖片 Rect dst = new Rect();// 屏幕位置及尺寸 //src 這個是表示繪畫圖片的大小 src.left = bx; //0,0 src.top = by; src.right = bx + w;// mBitDestTop.getWidth();,這個是桌面圖的寬度, src.bottom = by + h;//mBitDestTop.getHeight()/2;// 這個是桌面圖的高度的一半 // 下面的 dst 是表示 繪畫這個圖片的位置 dst.left = x; //miDTX,//這個是可以改變的,也就是繪圖的起點X位置 dst.top = y; //mBitQQ.getHeight();//這個是QQ圖片的高度。 也就相當於 桌面圖片繪畫起點的Y坐標 dst.right = x + w; //miDTX + mBitDestTop.getWidth();// 表示需繪畫的圖片的右上角 dst.bottom = y + h; // mBitQQ.getHeight() + mBitDestTop.getHeight();//表示需繪畫的圖片的右下角 canvas.drawBitmap(blt, src, dst, null);//這個方法 第一個參數是圖片原來的大小,第二個參數是 繪畫該圖片需顯示多少。也就是說你想繪畫該圖片的某一些地方,而不是全部圖片,第三個參數表示該圖片繪畫的位置 src = null; dst = null; }