安卓xuexi爱上AndroidAndroid开发

android如何简单的将view转成图片保存到本地(实用技术)

2018-04-20  本文已影响151人  haegyeong

产品需求是要将view转化成图片再分享出去,还没做过这种功能怎么办??第一时间去Google一把,然后啪啪啪完成。先上一波效果图压压惊先(忽略那个熊猫,测试图片来的)

image.png 保存在相册的效果

为什么后面一片黑色???大家一堆黑人问号,其实那是模拟器的相册黑色背景,保存的就只有刚刚红色部分的图片,效果看完,上代码

 /**
   * @param linearLayout 要转化为图片的布局
   */
private void generatBitmap(LinearLayout linearLayout) {
        linearLayout.setDrawingCacheEnabled(true);
        linearLayout.measure(View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED),
                View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED));
        linearLayout.layout(0, 0, linearLayout.getMeasuredWidth(), linearLayout.getMeasuredHeight());
        linearLayout.buildDrawingCache();
        bitmap = Bitmap.createBitmap(linearLayout.getDrawingCache());
        linearLayout.setDrawingCacheEnabled(false);
        linearLayout.setGravity(Gravity.CENTER);  //因为刚刚重新测量布局一次,需要重新设置view居中
}

有老铁说保存图片但是在相册中没找到保存的图片,那是因为相册不知道你保存了图片,这个简单,下面一句代码搞定相册通知更新

 MediaScannerConnection.scanFile(UIUtils.getContext(), new String[]{file.toString()}, null, null);
上一篇下一篇

猜你喜欢

热点阅读