我在android应用程序中工作,我想清除我的位图数据。场景是我正在捕获Widget(Imageview)的屏幕截图,并将其存储在Bitmap中。单击按钮即可执行此操作。所以一段时间后,我得到一个内存错误。所以我想清除位图中的值。为此,我完成了以下代码:
BitMap变量是mCaptureImageBitmap

  public void ButtonClick(View v)
    {
               mCaptureImageBitmap.recycle();
               mCaptureImageBitmap=null;
                View ve = findViewById(R.id.mainscreenGlViewRelativeLayout);
                ve.setDrawingCacheEnabled(true);
                mCaptureImageBitmap = ve.getDrawingCache();
    }


但是我收到了NullPoint异常的错误。请帮我

最佳答案

您拥有大多数正确的代码,但顺序错误。尝试做这样的事情

public void ButtonClick(View v)
{
      Bitmap mCaptureImageBitmap;
      final View ve = findViewById(R.id.mainscreenGlViewRelativeLayout);
      ve.setDrawingCacheEnabled(true);
      mCaptureImageBitmap = ve.getDrawingCache();

      // Do something useful with your image here

      mCaptureImageBitmap.recycle();
      mCaptureImageBitmap = null;
}

关于android - 清除位图数据并将其设置为空,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11013018/

10-11 04:40