Android 为什么可以';我不能用自己的画布画画吗?
当我在Android 为什么可以';我不能用自己的画布画画吗?,android,canvas,ondraw,Android,Canvas,Ondraw,当我在onDraw()中创建一个新的Canvas时,如下所示: Canvas c = new Canvas(myBitmap); 然后用这个画一些东西,它不起作用 但是,当我使用onDraw(canvas canvas)中的canvas参数时,它是有效的。有人能告诉我为什么吗?试试这个- Bitmap bitmap = Bitmap.createBitmap( view.getWidth(), view.getHeight(), Bitmap.Config.ARGB_8888); Canva
onDraw()
中创建一个新的Canvas
时,如下所示:
Canvas c = new Canvas(myBitmap);
然后用这个画一些东西,它不起作用
但是,当我使用onDraw(canvas canvas)
中的canvas
参数时,它是有效的。有人能告诉我为什么吗?试试这个-
Bitmap bitmap = Bitmap.createBitmap( view.getWidth(), view.getHeight(), Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
view.draw(canvas);
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, fos);
并且,请参见中的相关问题
另外,还可以尝试一下。您会遇到什么样的错误?如果只想绘制位图,请使用以下代码:
@Override
protected void onDraw(Canvas canvas)
{
canvas.drawBitmap(bak, 0, 0, null);
}
其中“bak”是位图。不需要在onDraw中再次创建另一个额外的画布,因为这是一种冗余 你说的“它不起作用”是什么意思。如果你想找到一个好的答案,你可能需要编辑你的问题来澄清这一点。但是我想画一个320*240的白色区域……当我使用上面的画布时,比如canvas.drawColor(Color.white);整个屏幕是白色的