Bitmap位图上的空指针异常= content.getDrawingCache();

时间:2011-11-15 13:40:58

标签: java android cordova

我正在尝试创建一个允许用户截取当前视图的应用。我正在使用以下代码来执行此操作。

View content = ((Activity)ctx).findViewById(R.id.rootlayout);
Bitmap bitmap = content.getDrawingCache();
File file = new File("/sdcard/test.png");

try 
{
    file.createNewFile();
    FileOutputStream ostream = new FileOutputStream(file);
    bitmap.compress(CompressFormat.PNG, 100, ostream);
    ostream.close();
} 
catch (Exception e) 
{
    e.printStackTrace();
}

但是,我在下一行得到了一个N​​ull Pointer Exception:

Bitmap bitmap = content.getDrawingCache();

这意味着什么,视图是空的?

任何帮助都会很棒!

1 个答案:

答案 0 :(得分:2)

您需要先致电content.setDrawingCacheEnabled(true);才能使用它。完成后请致电content.setDrawingCacheEnabled(false);