imaNNeo/fl_chart

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

Open

#1,088 建立於 2022年7月7日

在 GitHub 查看
 (2 留言) (0 反應) (0 負責人)Dart (1,964 fork)batch import
Line Chartgood first issuequestion

倉庫指標

Star
 (7,513 star)
PR 合併指標
 (30 天內沒有已合併 PR)

描述

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();
          },
        ),
      ),);}

貢獻者指南