From 4e4310edcc77cbcad18f4c0ee03095562aace055 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期二, 15 十月 2024 18:13:19 +0800
Subject: [PATCH] 2024年10月15日18:12:15
---
app/src/main/java/com/hdl/photovoltaic/ui/me/QrCodeMainActivity.java | 41 ++++++++++++++++++++++++++++++++++++++---
1 files changed, 38 insertions(+), 3 deletions(-)
diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/me/QrCodeMainActivity.java b/app/src/main/java/com/hdl/photovoltaic/ui/me/QrCodeMainActivity.java
index 276831b..225b07b 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/me/QrCodeMainActivity.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/me/QrCodeMainActivity.java
@@ -1,19 +1,24 @@
package com.hdl.photovoltaic.ui.me;
+import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.Color;
import android.os.Bundle;
+import android.provider.MediaStore;
import android.text.TextUtils;
import android.view.View;
import androidx.appcompat.content.res.AppCompatResources;
+import com.google.gson.Gson;
import com.hdl.photovoltaic.R;
import com.hdl.photovoltaic.base.CustomBaseActivity;
import com.hdl.photovoltaic.config.UserConfigManage;
import com.hdl.photovoltaic.databinding.ActivityQrCodeMainBinding;
import com.hdl.photovoltaic.other.HdlCommonLogic;
+import com.hdl.photovoltaic.other.HdlThreadLogic;
+import com.hdl.photovoltaic.ui.bean.QrCodeBean;
/**
* 浜岀淮鐮佸悕鐗囩殑鐣岄潰
@@ -54,17 +59,42 @@
viewBinding.toolbarTopQrCodeRl.topMoreBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
+ // 鍋囪浣犲凡缁忔湁浜嗕竴涓簩缁寸爜鍥剧墖锛岃繖閲屾槸涓�涓畝鍖栫殑鎴浘鏂规硶
+ viewBinding.qrCodeIv.setDrawingCacheEnabled(true);
+ Bitmap bitmap = viewBinding.qrCodeIv.getDrawingCache();
+ // 淇濆瓨鎴浘鍒扮浉鍐�
+ saveImageToGallery(bitmap);
+ // 娓呯悊缂撳瓨
+ viewBinding.qrCodeIv.setDrawingCacheEnabled(false);
+ if (bitmap != null && !bitmap.isRecycled()) {
+ // 纭繚涓嶆槸宸茬粡鍥炴敹鐨凚itmap
+ // 杩涜浣犻渶瑕佺殑鎿嶄綔
+ Bitmap.createBitmap(bitmap).recycle();
+ }
}
});
}
+
+ private void saveImageToGallery(Bitmap bitmap) {
+ String path = MediaStore.Images.Media.insertImage(getContentResolver(), bitmap, "QRCode", null);
+ if (path != null) {
+ HdlThreadLogic.toast(_mActivity, getString(R.string.save_qr_code_successfully));
+ // Toast.makeText(this, "淇濆瓨鎴愬姛", Toast.LENGTH_SHORT).show();
+ } else {
+ HdlThreadLogic.toast(_mActivity, getString(R.string.failed_to_save_qr_code));
+ //Toast.makeText(this, "淇濆瓨澶辫触", Toast.LENGTH_SHORT).show();
+ }
+ }
+
private void initView() {
viewBinding.toolbarTopQrCodeRl.topTitleTv.setText(R.string.qr_code_business_card);
viewBinding.toolbarTopQrCodeRl.topBackLl.setVisibility(View.VISIBLE);
+ viewBinding.toolbarTopQrCodeRl.topLeftIv.setImageResource(R.drawable.back_c);
viewBinding.toolbarTopQrCodeRl.topTitleTv.setTextColor(getResources().getColor(R.color.text_030D1C, null));
- viewBinding.toolbarTopQrCodeRl.topBarView.setBackgroundColor(getResources().getColor(R.color.text_FFFFFFFF, null));
- viewBinding.toolbarTopQrCodeRl.topMoreIv.setVisibility(View.VISIBLE);
+ viewBinding.toolbarTopQrCodeRl.topBarView.setBackgroundColor(getResources().getColor(R.color.text_FFECECEC, null));
+ viewBinding.toolbarTopQrCodeRl.topMoreBtn.setVisibility(View.VISIBLE);
viewBinding.toolbarTopQrCodeRl.topMoreIv.setImageDrawable(AppCompatResources.getDrawable(_mActivity, R.drawable.save_image));
if (!TextUtils.isEmpty(UserConfigManage.getInstance().getUserName())) {
viewBinding.userNameTv.setVisibility(View.VISIBLE);
@@ -75,7 +105,12 @@
viewBinding.userAccountTv.setVisibility(View.VISIBLE);
viewBinding.userAccountTv.setText(str);
}
- String content = UserConfigManage.getInstance().getAccount();
+ QrCodeBean qrCodeBean = new QrCodeBean();
+ qrCodeBean.setUserEmail(UserConfigManage.getInstance().getBingEmail());
+ qrCodeBean.setUserPhone(UserConfigManage.getInstance().getBingPhone());
+ qrCodeBean.setUserName(UserConfigManage.getInstance().getUserName());
+ qrCodeBean.setAccount(UserConfigManage.getInstance().getAccount());
+ String content = new Gson().toJson(qrCodeBean);
Bitmap bitmap = HdlCommonLogic.getInstance().createQRCodeBitmap(content, 229, 229, "UTF-8", "H", "1", Color.BLACK, Color.WHITE);
viewBinding.qrCodeIv.setImageBitmap(bitmap);
--
Gitblit v1.8.0