From e69cc227309f3eb2025fa4ef043b075467d97de1 Mon Sep 17 00:00:00 2001
From: hxb <hxb@hdlchina.com.cn>
Date: 星期三, 04 十二月 2024 13:53:47 +0800
Subject: [PATCH] 更改闪屏问题

---
 app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java |   50 ++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 46 insertions(+), 4 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java
index 6fd51e8..15db7ab 100644
--- a/app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java
+++ b/app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java
@@ -4,6 +4,8 @@
 import static com.hdl.photovoltaic.ui.home.aachart.CustomStyleChartComposer.configureColorfulColumnChart;
 
 import android.os.Bundle;
+import android.os.Handler;
+import android.os.Message;
 import android.os.SystemClock;
 import android.text.SpannableString;
 import android.text.Spanned;
@@ -13,6 +15,7 @@
 import android.text.style.ForegroundColorSpan;
 import android.text.style.StyleSpan;
 import android.view.View;
+import android.view.ViewGroup;
 
 
 import androidx.annotation.NonNull;
@@ -57,6 +60,7 @@
 import org.greenrobot.eventbus.Subscribe;
 import org.greenrobot.eventbus.ThreadMode;
 
+import java.lang.ref.WeakReference;
 import java.util.Calendar;
 import java.util.Date;
 import java.util.List;
@@ -403,7 +407,7 @@
     /**
      * 鍥捐〃鍔犺浇
      */
-    private void setUpAAChartView() {
+    private void setUpAAChartView(boolean needDelay) {
         aaChartView = viewBinding.autoSizeMyAAChart;
         aaChartView.callBack = this;
         if (TimeType.day.equals(timeType)) {
@@ -411,8 +415,46 @@
         } else if (TimeType.month.equals(timeType) || TimeType.year.equals(timeType) || TimeType.all.equals(timeType)) {
             aaChartModel = configureColorfulColumnChart(getString(R.string.generation), fieldNames, fieldValues);
         }
-        aaChartView.aa_drawChartWithChartModel(aaChartModel);
 
+        if(needDelay) {
+            viewBinding.autoSizeMyAAChart.setX(10000);//鐩存帴鎵撳紑鏈夐棯灞忥紝鍦ㄤ笉鏄剧ず鐨勫湴鏂瑰厛鏄剧ず锛屽啀绉诲姩鍒版甯哥殑浣嶇疆銆俆ODO 鍚庣画鎵惧埌鏍规簮闂鍚庡幓鎺夎繖涓敤娉�
+            aaChartView.aa_drawChartWithChartModel(aaChartModel);
+            mHandler.sendEmptyMessageDelayed(100,800);
+        }
+        else{
+            aaChartView.aa_drawChartWithChartModel(aaChartModel);
+        }
+    }
+
+    FHandler mHandler=new FHandler(this);
+
+    private static class FHandler extends Handler{
+        //瀹氫箟寮卞紩鐢ㄥ疄渚�
+        private WeakReference<HomePageFragment> reference;
+
+        //鍦ㄦ瀯閫犳柟娉曚腑浼犲叆闇�瑕佹寔鏈夌殑fragment瀹炰緥
+        public FHandler(HomePageFragment fragment) {
+            reference = new WeakReference<HomePageFragment>(fragment); }
+
+        //閫氳繃澶嶅啓handlerMessage()浠庤�屽喅瀹氬浣曡繘琛屾洿鏂癠I鎿嶄綔
+        @Override
+        public void handleMessage(Message msg) {
+            //鐪佺暐浠g爜
+
+            switch (msg.what){
+                case 100:
+                    if(reference.get()!=null) {
+                        reference.get().viewBinding.autoSizeMyAAChart.setX(0);//绉诲姩鍒版纭殑浣嶇疆
+                    }
+                    break;
+            }
+        }
+    }
+
+    @Override
+    public void onDestroy() {
+        super.onDestroy();
+        mHandler.removeCallbacksAndMessages(null);
     }
 
     private void initView() {
@@ -447,7 +489,7 @@
         viewBinding.v2.setVisibility(View.VISIBLE);
         viewBinding.v3.setVisibility(View.VISIBLE);
         viewBinding.homePageStationSelectTimeLl.setVisibility(View.VISIBLE);
-        setUpAAChartView();//鍥捐〃鍔犺浇
+        setUpAAChartView(true);//鍥捐〃鍔犺浇
     }
 
 
@@ -589,7 +631,7 @@
                         }
                         fieldNames = keys;
                         fieldValues = values;
-                        setUpAAChartView();
+                        setUpAAChartView(false);
                     }
                 });
 

--
Gitblit v1.8.0