From a5e2676c2d9888adab490fc5bbaa0e74a712d90a Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期三, 24 四月 2024 18:28:49 +0800 Subject: [PATCH] 2024年04月24日18:28:38 --- app/src/main/java/com/hdl/photovoltaic/ui/home/HomePageFragment.java | 224 ++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 202 insertions(+), 22 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 3bc0fa3..691f49c 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 @@ -1,6 +1,55 @@ package com.hdl.photovoltaic.ui.home; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.adjustYAxisMaxAndMinValues; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureAreaChartThreshold; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureChartWithShadowStyle; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureColorfulChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureColorfulColumnChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureColorfulDataLabelsStepLineChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureColorfulGradientAreaChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureColorfulGradientColorAndColorfulDataLabelsStepAreaChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureColorfulGradientColorChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureColorfulGradientSplineChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureColorfulShadowSplineChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureDiscontinuousDataChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureGradientColorAreasplineChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureHexagonRadarChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureMaxAndMinDataLabelsForChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureMultiLevelStopsArrGradientColorAreasplineMixedLineChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureNightingaleRoseChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configurePentagonRadarChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureQuadrangleRadarChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureSpecialStyleColumnForNegativeDataMixedPositiveData; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureSpecialStyleColumnOfSingleDataElementChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureSpecialStyleMarkerOfSingleDataElementChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.configureTriangleRadarChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.connectNullsForSingleAASeriesElement; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.customAreasplineChartWithColorfulGradientColorZones; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.customBarChartHoverColorAndSelectColor; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.customChartHoverAndSelectHaloStyle; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.customColumnChartBorderStyleAndStatesHoverColor; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.customLineChartMarkerSymbolContent; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.customLineChartWithColorfulMarkersAndLines; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.customLineChartWithColorfulMarkersAndLines2; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.customNormalStackingChartDataLabelsContentAndStyle; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.customScatterChartMarkerSymbolContent; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.customSpecialStyleDataLabelOfSingleDataElementChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.customSplineChartMarkerStatesHoverStyle; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.customVerticalXAxisCategoriesLabelsByHTMLBreakLineTag; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.disableSomeOfLinesMouseTrackingEffect; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.disableSplineChartMarkerHoverEffect; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.doubleLayerPieChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.drawLineChartWithPointsCoordinates; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.freeStyleRoundedCornersStackingColumnChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.largeDataStackingColumnChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.lineChartsWithLargeDifferencesInTheNumberOfDataInDifferentSeriesElement; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.noMoreGroupingAndNestedColumnChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.noMoreGroupingAndOverlapEachOtherColumnChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.splineChartHoverLineWithNoChangeAndCustomMarkerStatesHoverStyle; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.topRoundedCornersStackingColumnChart; +import static com.hdl.photovoltaic.ui.home.CustomStyleChartComposer.upsideDownPyramidChart; + import android.content.Intent; import android.os.Bundle; import android.view.View; @@ -28,9 +77,15 @@ FragmentHomePageBinding viewBinding; - AAChartView aaChartView; + AAChartView aaChartView1; - AAChartModel aaChartModel; + AAChartModel aaChartModel1; + AAChartView aaChartView2; + + AAChartModel aaChartModel2; + AAChartView aaChartView3; + + AAChartModel aaChartModel3; @Override @@ -41,47 +96,172 @@ @Override public void onBindView(Bundle savedInstanceState) { - setUpAAChartView(); - viewBinding.test.setOnClickListener(new View.OnClickListener() { + viewBinding.test1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - + setUpAAChartView(1); + } + }); + viewBinding.test2.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + setUpAAChartView(2); + } + }); + viewBinding.test3.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + setUpAAChartView(3); } }); } - private void setUpAAChartView() { - aaChartView = viewBinding.AAChartView; - aaChartView.callBack = this; - aaChartModel = configureAAChartModel(); - aaChartView.aa_drawChartWithChartModel(aaChartModel); + private void setUpAAChartView(int value) { + if (value == 1) { + aaChartView1 = viewBinding.AAChartView1; + aaChartView1.callBack = this; + aaChartModel1 = configureAAChartModel(); + aaChartView1.aa_drawChartWithChartModel(aaChartModel1); + } else if (value == 2) { + aaChartView2 = viewBinding.AAChartView2; + aaChartView2.callBack = this; + aaChartModel2 = configureColorfulColumnChart();// configureTheAAChartModel("colorfulColumnChart"); + aaChartView2.aa_drawChartWithChartModel(aaChartModel2); + } else if (value == 3) { + aaChartView3 = viewBinding.AAChartView3; + aaChartView3.callBack = this; + aaChartModel3 = configureAAChartModel(); + aaChartView3.aa_drawChartWithChartModel(aaChartModel3); + } } private AAChartModel configureAAChartModel() { // Intent intent = getIntent(); -// String chartType = intent.getStringExtra("chartType"); -// int position = intent.getIntExtra("position", 0); - - aaChartModel = BasicChartComposer.configureAreaChart(); -// configureTheStyleForDifferentTypeChart(chartType, position); + String chartType = AAChartType.Area; + int position = 0; + aaChartModel1 = BasicChartComposer.configureAreaChart(); + configureTheStyleForDifferentTypeChart(chartType, position); // configureViewsVisibility(chartType); - - return aaChartModel; + return aaChartModel1; } private void configureTheStyleForDifferentTypeChart(String chartType, int position) { if ((chartType.equals(AAChartType.Area) || chartType.equals(AAChartType.Line)) && (position == 4 || position == 5)) { - aaChartModel = BasicChartComposer.configureStepAreaChartAndStepLineChart(); + aaChartModel1 = BasicChartComposer.configureStepAreaChartAndStepLineChart(); } else if (chartType.equals(AAChartType.Column) || chartType.equals(AAChartType.Bar)) { - aaChartModel = BasicChartComposer.configureColumnChartAndBarChart(); + aaChartModel1 = BasicChartComposer.configureColumnChartAndBarChart(); } else if (chartType.equals(AAChartType.Area) || chartType.equals(AAChartType.Areaspline)) { - aaChartModel = BasicChartComposer.configureAreaChartAndAreasplineChartStyle(chartType); + aaChartModel1 = BasicChartComposer.configureAreaChartAndAreasplineChartStyle(chartType); } else if (chartType.equals(AAChartType.Line) || chartType.equals(AAChartType.Spline)) { - aaChartModel = BasicChartComposer.configureLineChartAndSplineChartStyle(chartType); + aaChartModel1 = BasicChartComposer.configureLineChartAndSplineChartStyle(chartType); } - aaChartModel.chartType = chartType; + aaChartModel1.chartType = chartType; + } + + private AAChartModel configureTheAAChartModel(String chartType) { + switch (chartType) { + case "colorfulChart": + return configureColorfulChart(); + case "gradientColorfulChart": + return configureColorfulGradientColorChart(); + case "discontinuousDataChart": + return configureDiscontinuousDataChart(); + case "colorfulColumnChart": + return configureColorfulColumnChart(); + case "nightingaleRoseChart": + return configureNightingaleRoseChart(); + case "chartWithShadowStyle": + return configureChartWithShadowStyle(); + case "colorfulGradientAreaChart": + return configureColorfulGradientAreaChart(); + case "colorfulGradientSplineChart": + return configureColorfulGradientSplineChart(); + case "gradientColorAreasplineChart": + return configureGradientColorAreasplineChart(); + case "SpecialStyleMarkerOfSingleDataElementChart": + return configureSpecialStyleMarkerOfSingleDataElementChart(); + case "SpecialStyleColumnOfSingleDataElementChart": + return configureSpecialStyleColumnOfSingleDataElementChart(); + case "AreaChartThreshold": + return configureAreaChartThreshold(); + case "customScatterChartMarkerSymbolContent": + return customScatterChartMarkerSymbolContent(); + case "customLineChartMarkerSymbolContent": + return customLineChartMarkerSymbolContent(); + case "TriangleRadarChart": + return configureTriangleRadarChart(); + case "QuadrangleRadarChart": + return configureQuadrangleRadarChart(); + case "PentagonRadarChart": + return configurePentagonRadarChart(); + case "HexagonRadarChart": + return configureHexagonRadarChart(); + case "adjustYAxisMaxAndMinValues": + return adjustYAxisMaxAndMinValues(); + case "customSpecialStyleDataLabelOfSingleDataElementChart": + return customSpecialStyleDataLabelOfSingleDataElementChart(); + case "customBarChartHoverColorAndSelectColor": + return customBarChartHoverColorAndSelectColor(); + case "customChartHoverAndSelectHaloStyle": + return customChartHoverAndSelectHaloStyle(); + case "customSplineChartMarkerStatesHoverStyle": + return customSplineChartMarkerStatesHoverStyle(); + case "splineChartHoverLineWithNoChangeAndCustomMarkerStatesHoverStyle": + return splineChartHoverLineWithNoChangeAndCustomMarkerStatesHoverStyle(); + case "customNormalStackingChartDataLabelsContentAndStyle": + return customNormalStackingChartDataLabelsContentAndStyle(); + case "upsideDownPyramidChart": + return upsideDownPyramidChart(); + case "doubleLayerPieChart": + return doubleLayerPieChart(); + case "disableSomeOfLinesMouseTrackingEffect": + return disableSomeOfLinesMouseTrackingEffect(); + case "configureColorfulShadowSplineChart": + return configureColorfulShadowSplineChart(); + case "configureColorfulDataLabelsStepLineChart": + return configureColorfulDataLabelsStepLineChart(); + case "configureColorfulGradientColorAndColorfulDataLabelsStepAreaChart": + return configureColorfulGradientColorAndColorfulDataLabelsStepAreaChart(); + case "disableSplineChartMarkerHoverEffect": + return disableSplineChartMarkerHoverEffect(); + case "configureMaxAndMinDataLabelsForChart": + return configureMaxAndMinDataLabelsForChart(); + case "customVerticalXAxisCategoriesLabelsByHTMLBreakLineTag": + return customVerticalXAxisCategoriesLabelsByHTMLBreakLineTag(); + case "noMoreGroupingAndOverlapEachOtherColumnChart": + return noMoreGroupingAndOverlapEachOtherColumnChart(); + case "noMoreGroupingAndNestedColumnChart": + return noMoreGroupingAndNestedColumnChart(); + case "topRoundedCornersStackingColumnChart": + return topRoundedCornersStackingColumnChart(); + case "freeStyleRoundedCornersStackingColumnChart": + return freeStyleRoundedCornersStackingColumnChart(); + case "customColumnChartBorderStyleAndStatesHoverColor": + return customColumnChartBorderStyleAndStatesHoverColor(); + case "customLineChartWithColorfulMarkersAndLines": + return customLineChartWithColorfulMarkersAndLines(); + case "customLineChartWithColorfulMarkersAndLines2": + return customLineChartWithColorfulMarkersAndLines2(); + case "drawLineChartWithPointsCoordinates": + return drawLineChartWithPointsCoordinates(); + case "configureSpecialStyleColumnForNegativeDataMixedPositiveData": + return configureSpecialStyleColumnForNegativeDataMixedPositiveData(); + case "configureMultiLevelStopsArrGradientColorAreasplineMixedLineChart": + return configureMultiLevelStopsArrGradientColorAreasplineMixedLineChart(); + case "connectNullsForSingleAASeriesElement": + return connectNullsForSingleAASeriesElement(); + case "lineChartsWithLargeDifferencesInTheNumberOfDataInDifferentSeriesElement": + return lineChartsWithLargeDifferencesInTheNumberOfDataInDifferentSeriesElement(); + case "customAreasplineChartWithColorfulGradientColorZones": + return customAreasplineChartWithColorfulGradientColorZones(); + case "largeDataStackingColumnChart": + return largeDataStackingColumnChart(); + + + } + return configureColorfulChart(); } @Override -- Gitblit v1.8.0