From ac7e902dca62fe00f442094a751048a802d13f90 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期二, 16 九月 2025 09:15:28 +0800
Subject: [PATCH] 2025年09月16日09:15:27
---
app/src/main/java/com/hdl/photovoltaic/ui/me/QrCodeMainActivity.java | 59 +++++++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 47 insertions(+), 12 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..bab8420 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;
/**
* 浜岀淮鐮佸悕鐗囩殑鐣岄潰
@@ -29,8 +34,8 @@
@Override
public void onBindView(Bundle savedInstanceState) {
- setNotificationBarBackgroundColor(CustomBaseActivity.CustomColor.white);
- setStatusBarTextColor();
+ setStatusBarTranslucent();
+ getWindow().setNavigationBarColor(getColor(R.color.text_00000000));
//鍒濆鍖�
initView();
//鍒濆鍖栫晫闈㈢洃鍚櫒
@@ -44,28 +49,51 @@
private void initEvent() {
- viewBinding.toolbarTopQrCodeRl.topBackLl.setOnClickListener(new View.OnClickListener() {
+ viewBinding.toolbarTopRl.topBackLl.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
- viewBinding.toolbarTopQrCodeRl.topMoreBtn.setOnClickListener(new View.OnClickListener() {
+ viewBinding.saveTv.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.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.topMoreIv.setImageDrawable(AppCompatResources.getDrawable(_mActivity, R.drawable.save_image));
+ viewBinding.toolbarTopRl.topBarView.setBackgroundColor(getColor(R.color.text_00000000));
+ viewBinding.toolbarTopRl.topTitleTv.setText(R.string.qr_code_business_card);
+ viewBinding.toolbarTopRl.topBackLl.setVisibility(View.VISIBLE);
+// 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);
viewBinding.userNameTv.setText(UserConfigManage.getInstance().getUserName());
@@ -75,8 +103,15 @@
viewBinding.userAccountTv.setVisibility(View.VISIBLE);
viewBinding.userAccountTv.setText(str);
}
- String content = UserConfigManage.getInstance().getAccount();
- Bitmap bitmap = HdlCommonLogic.getInstance().createQRCodeBitmap(content, 229, 229, "UTF-8", "H", "1", Color.BLACK, Color.WHITE);
+ 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 = UserConfigManage.getInstance().getBingEmail() + ";" + UserConfigManage.getInstance().getBingPhone() + ";" + UserConfigManage.getInstance().getUserName() + ";" + UserConfigManage.getInstance().getAccount();
+// String content = UserConfigManage.getInstance().getAccount();//
+ String content = new Gson().toJson(qrCodeBean);//鍐呭杩囬暱寰俊鎵爜鏄剧ず鏈夐棶棰�
+ Bitmap bitmap = HdlCommonLogic.getInstance().createQRCodeBitmap(content, 168, 168, "UTF-8", "H", "1", Color.BLACK, Color.WHITE);
viewBinding.qrCodeIv.setImageBitmap(bitmap);
}
--
Gitblit v1.8.0