将ImageVIew中的图片保存到本地相册中

imageView = getView().findViewById(R.id.iv_code);

 private void code(){
        //将ImageView中的图片转换成Bitmap
        imageView.buildDrawingCache();
        Bitmap bitmap = imageView.getDrawingCache();
//将Bitmap 转换成二进制,写入本地

        ByteArrayOutputStream stream = new ByteArrayOutputStream();
        bitmap.compress(Bitmap.CompressFormat.PNG, 100, stream);
        byte[] byteArray = stream.toByteArray();
        File dir = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/picture");
        if (!dir.isFile()) {
            dir.mkdir();
        }
        //makeCheckCode()  是随机的字符串当然你也可以写别的看项目需要
        File file = new File(dir, makeCheckCode()  + ".png");
        try {
            FileOutputStream fos = new FileOutputStream(file);
            fos.write(byteArray, 0, byteArray.length);
            fos.flush();
            //用广播通知相册进行更新相册
            Intent intent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
            Uri uri = Uri.fromFile(file);
            intent.setData(uri);
            getContext().sendBroadcast(intent);
            ToastUtils.showToast("------>通知相册更新成功");
        } catch (
                FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

    }

随机生成的字符串当做图片的名字

 public String makeCheckCode() {
        StringBuffer sb = new StringBuffer();
        for (int i = 0; i < 5; i++) {
            int temp = (int) (Math.random() * 10);
            sb.append(temp);
        }
        return sb.toString();
    }
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值