diff --git a/Documentation~/zh/changelog.md b/Documentation~/zh/changelog.md index 99132005..99b7e6fb 100644 --- a/Documentation~/zh/changelog.md +++ b/Documentation~/zh/changelog.md @@ -69,6 +69,7 @@ slug: /changelog ## master +* (2023.11.03) 修复`Bar`设置渐变色时鼠标移出效果异常的问题 (#285) * (2023.11.02) 优化`SerieData`设置`ignore`时`formatter`的忽略问题 * (2023.11.01) 增加`MarkLine`的`onTop`设置是否显示在最上层 * (2023.10.21) 修复`Pie`有0数据时`Label`的位置异常的问题 diff --git a/Runtime/Serie/Bar/BarHandler.cs b/Runtime/Serie/Bar/BarHandler.cs index 3de86ccc..c78d2acc 100644 --- a/Runtime/Serie/Bar/BarHandler.cs +++ b/Runtime/Serie/Bar/BarHandler.cs @@ -67,8 +67,8 @@ namespace XCharts.Runtime { case LabelStyle.Position.Bottom: var center = serieData.context.rect.center; - if(serie.context.isHorizontal) - return new Vector3(center.x - serieData.context.rect.width/2, center.y); + if (serie.context.isHorizontal) + return new Vector3(center.x - serieData.context.rect.width / 2, center.y); else return new Vector3(center.x, center.y - serieData.context.rect.height / 2); case LabelStyle.Position.Center: @@ -94,10 +94,13 @@ namespace XCharts.Runtime m_LastCheckContextFlag = needCheck; serie.context.pointerItemDataIndex = -1; serie.context.pointerEnter = false; + Color32 color1, toColor1; foreach (var serieData in serie.data) { serieData.context.highlight = false; - serieData.interact.Reset(); + var state = SerieHelper.GetSerieState(serie, serieData, true); + SerieHelper.GetItemColor(out color1, out toColor1, serie, serieData, chart.theme, state); + serieData.interact.SetColor(ref needInteract, color1, toColor1); } chart.RefreshPainter(serie); }