请有人解释一下当调用canvas.drawBitmap(,,,)时究竟发生了什么。当调用onDraw(Canvas canvas)方法时,会提供一个画布,它有一个底层的Bitmap。当我们调用时,我很困惑canvas.drawBitmap(otherBitmap ,,,),前一个Bitmap会发生什么我的意思是原始的Bitmap,它是canvas的底层位图。
答案 0 :(得分:0)
要回答您的问题,drawBitmap()
会在您告诉它的位置重绘指定的位图。如果画布上当前存在某些东西则会被涂上。
drawBitmap()
有不同的实现:
drawBitmap(int[] colors, int offset, int stride, float x, float y, int width, int height, boolean hasAlpha, Paint paint)
drawBitmap(Bitmap bitmap, Matrix matrix, Paint paint)
drawBitmap(int[] colors, int offset, int stride, int x, int y, int width, int height, boolean hasAlpha, Paint paint)
drawBitmap(Bitmap bitmap, Rect src, RectF dst, Paint paint)
drawBitmap(Bitmap bitmap, float left, float top, Paint paint)
drawBitmap(Bitmap bitmap, Rect src, Rect dst, Paint paint)
这应该提供一些见解:drawBitmap()。