单纯的canvas好比一张贴画,你必须贴到墙上才能看到,在哪个View里面画图就需要使用该View的canvas.每个View都会有一个onDraw(Canvas canvas)方法,你可以在onDraw方法内加入你的代码。
canvas.drawBitmap操作的时候,为什么要先对原Bitmap进行Bitmap.createBitmap操作,创建副本,而不是直接在原来的Bitmap上面操作。当想画一个BitmapDrawable在Android的画布,有两种可能性,同样的,我不知道哪一个preFER:
1、使用canvas.drawBitmap(),并从中提取绘制使用getBitmap位图()
2、使用drawable.draw(画布),传递画布作为参数传递给被拉伸。
我使用的第一个选择,但它似乎完全是任意的,因为我看不出有什么区别。
解决方案
永远不要选择1号,你做的方式。而不是创建一个位图了,你想画它绘制每一次的,创造摆在首位的位图。也就是说,不要创建一个可绘制。