码迷,mamicode.com
首页 > 移动开发 > 详细

Android:解决view.getDrawingCache()返回null的问题

时间:2015-07-09 13:15:23      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:android   canvas   bitmap   

项目开发中,有时候需要将某个View的内容(包含其子View)以图片的方式保存下来(类似于截图),于是首先想到view.getDrawingCache()这个方法,它将返回一个Bitmap. 可是我在使用时,这个方法总是返回null,总网上查了下,需要设置一堆的参数,但依然不怎么好使。

突然想到换一个思路,既然获取View的内容这么困难,还不如将 View 的内容直接draw到另一个canvas上去!于是解决方案诞生了,亲测可用技术分享

public static Bitmap getViewBitmap(View view) {
        Bitmap bitmap = Bitmap.createBitmap(view.getLayoutParams().width, view.getLayoutParams().height, Bitmap.Config.ARGB_8888);
        Canvas canvas = new Canvas(bitmap);
        view.draw(canvas);
        return bitmap;
    }
问题解决!

版权声明:本文为博主原创文章,未经博主允许不得转载。

Android:解决view.getDrawingCache()返回null的问题

标签:android   canvas   bitmap   

原文地址:http://blog.csdn.net/books1958/article/details/46814659

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!