imaNNeo/fl_chart

Dynamic tooltipBgColor in LineChart [Partial idea, i need help with the final part]

Open

#1 088 ouverte le 7 juil. 2022

Voir sur GitHub
 (2 commentaires) (0 réactions) (0 assignés)Dart (1 964 forks)batch import
Line Chartgood first issuequestion

Métriques du dépôt

Stars
 (7 513 stars)
Métriques de merge PR
 (Aucune PR mergée en 30 j)

Description

Hello,

I am trying to implement a dynamic tooltipBgColor, i achieved something, but i need help with the final part.

As you can see in the following code, i am able to get the "y" coordinates of the pressed spot, since it's printed correctly. The problem is that even if i change the color of color_of_pressed_spot to the one i want, the color is not displayed since i would need to call setstate, but i cannot do it in that moment or i will get an error. Any idea on how to do it?

LineChartData mainData() {
    return LineChartData(
      lineTouchData: LineTouchData(
        touchTooltipData: LineTouchTooltipData(
          tooltipBgColor: color_of_pressed_spot,
          getTooltipItems: (List<LineBarSpot> spots) {
            return spots.map((spot) {
              print("Spot y: ${spot.y}");
              color_of_pressed_spot = changeColor(list_of_colors_i_want_to_use_for_each_spot_y, spot.y);

              return LineTooltipItem(
                getName(spot.y),
                const TextStyle(color: Colors.white),
              );
            }).toList();
          },
        ),
      ),);}

Guide contributeur