Android通过代码截取屏幕截图

时间:2011-05-09 16:50:45

标签: android sms screenshot

这不应该是一个问题太难了。我希望能够截取我的布局(视图)并通过短信发送。有人可以通过这些步骤走我吗?

谢谢!

编辑: 它不一定是我所想的“截图”,只要我们能够以某种方式从视图中获取所有渲染像素。

1 个答案:

答案 0 :(得分:23)

在网络上我发现了一些代码片段,我可以一起工作。

这是一个运作良好的解决方案:

设置Root布局:

View content = findViewById(R.id.layoutroot);
content.setDrawingCacheEnabled(true);

获取渲染视图的函数:

private void getScreen()
{
    View content = findViewById(R.id.layoutroot);
    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();
    }
}