覆盖位图时出错android.graphics.Canvas.throwIfRecycled

nor*_*dig 7 android canvas bitmap nullpointerexception

我试图使用以下方法在画布上叠加图像:

private Bitmap overlay(Bitmap bmp1, Bitmap bmp2) {

    bmOverlay = Bitmap.createBitmap(70, 70, Bitmap.Config.RGB_565);
    canvas = new Canvas(bmOverlay);
    canvas.drawBitmap(bmp1, 0, 0, null);  //line 179
    canvas.drawBitmap(bmp2, 0, 0, null);
    return bmOverlay;           
}
Run Code Online (Sandbox Code Playgroud)

但是,我的应用程序不断崩溃,日志显示:

android.graphics.Canvas.throwIfRecycled(Canvas.java:954)的android.graphics.Canvas.drawBitmap(Canvas.java:980)中的java.lang.NullPointerException,位于com.MyApp.overlay(MyApp.java:179)

有人可以帮忙吗?

小智 4

在尝试将位图绘制到画布时,我遇到了相同的 trowIfRecycled 异常。在程序开始初始化位图之前,我试图在我启动的线程中绘制。所以在我的例子中:位图为空,我必须寻找一个更好的地方来进行初始化。