diff --git a/Documentation~/zh/changelog.md b/Documentation~/zh/changelog.md index 7bb48b80..3529010b 100644 --- a/Documentation~/zh/changelog.md +++ b/Documentation~/zh/changelog.md @@ -66,6 +66,7 @@ slug: /changelog ## master +* (2023.05.04) 修复`Theme`在修改默认主题的参数后运行被重置的问题 * (2023.05.04) 增加`Symbol`选择`Custom`类型时的`Warning`提示 * (2023.04.15) 修复`DataZoom`在多个图表时可能异常的问题 (#252) * (2023.04.14) 修复`Tooltip`在只有一个数据时可能异常的问题 diff --git a/Runtime/Internal/BaseChart.cs b/Runtime/Internal/BaseChart.cs index 46b3d4f9..80964be9 100644 --- a/Runtime/Internal/BaseChart.cs +++ b/Runtime/Internal/BaseChart.cs @@ -11,7 +11,7 @@ namespace XCharts.Runtime { [AddComponentMenu("XCharts/EmptyChart", 10)] [ExecuteInEditMode] - [RequireComponent(typeof(RectTransform),typeof(CanvasRenderer))] + [RequireComponent(typeof(RectTransform), typeof(CanvasRenderer))] [DisallowMultipleComponent] public partial class BaseChart : BaseGraph, ISerializationCallbackReceiver { @@ -131,7 +131,7 @@ namespace XCharts.Runtime { if (m_Settings == null) m_Settings = Settings.DefaultSettings; - CheckTheme(); + CheckTheme(true); base.Awake(); InitComponentHandlers(); InitSerieHandlers(); @@ -244,12 +244,16 @@ namespace XCharts.Runtime painter.SetActive(flag, m_DebugInfo.showAllChartObject); } - protected virtual void CheckTheme() + protected virtual void CheckTheme(bool firstInit = false) { if (m_Theme.sharedTheme == null) { m_Theme.sharedTheme = XCThemeMgr.GetTheme(ThemeType.Default); } + if (firstInit) + { + m_CheckTheme = m_Theme.themeType; + } if (m_Theme.sharedTheme != null && m_CheckTheme != m_Theme.themeType) { m_CheckTheme = m_Theme.themeType;