我期待在從谷歌的示例應用程序,它採用觸摸繪圖用帆布交易之一:的Android - 畫布繪製懷疑
我有幾個疑惑:
我無法理解Canvas與位圖角色 的作用。
在
drawPoint
功能,我不能夠 瞭解此代碼段:
mCanvas.drawCircle(x, y, radius, mPaint); mRect.set((int) (x - radius - 2), (int) (y - radius - 2), (int) (x + radius + 2), (int) (y + radius + 2)); invalidate(mRect);
如果循環已經被拉入上面的帆布,然後什麼情況onDraw
功能,其中給出以下代碼:
canvas.drawBitmap(mBitmap, 0, 0, null);
在'drawPoint()',圓圈繪圖調用不涉及任何位圖了!請參閱:'mCanvas.drawCircle(x,y,radius,mPaint);'這是如何工作的? – jeffreyveon
是的,這就是我的¹點意味着什麼。當mBitmap以特定大小創建時,mCanvas被分配給它(行'newCanvas.setBitmap(newBitmap);',稍後在'mBitmap = newBitmap; mCanvas = newCanvas')。從此mCanvas編輯「mBitmap」中的數據。這裏使用'mCanvas',它包含第一段描述的繪圖函數'drawCircle()'。該圓圈被繪製在位圖所保存的像素數據中。 :) – 2011-10-08 16:00:59
太棒了,非常感謝。現在很清楚。 – jeffreyveon