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