修复Chart在运行时被删除时会异常报错的问题 (#269)

This commit is contained in:
monitor1394
2023-08-12 22:18:25 +08:00
parent d0d5c2a101
commit 71c8bc1499
5 changed files with 17 additions and 3 deletions

View File

@@ -76,6 +76,7 @@ slug: /changelog
日志详情:
* (2023.08.12) 修复`Chart`在运行时被删除时会异常报错的问题 (#269)
* (2023.08.11) 修复`DataZoom`开启时可能会导致无法添加数据的问题
* (2023.08.11) 修复`SerieData`单独设置`ItemStyle``itemFormatter`不生效的问题
* (2023.08.10) 优化`BarChart``Tooltip``Trigger``Item`时的表现

View File

@@ -72,8 +72,7 @@ namespace XCharts.Runtime
var ignoreColumn = string.IsNullOrEmpty(tooltip.ignoreDataDefaultContent);
var titleActive = !string.IsNullOrEmpty(data.title);
if (titleActive != title.gameObject.activeSelf)
title.gameObject.SetActive(titleActive);
ChartHelper.SetActive(title, titleActive);
title.SetText(data.title);
m_ColumnMaxWidth.Clear();

View File

@@ -323,6 +323,8 @@ namespace XCharts.Runtime
protected override void OnDestroy()
{
base.OnDestroy();
XChartsMgr.RemoveChart(chartName);
for (int i = transform.childCount - 1; i >= 0; i--)
{
DestroyImmediate(transform.GetChild(i).gameObject);

View File

@@ -127,16 +127,21 @@ namespace XCharts.Runtime
}
#if UNITY_EDITOR
protected override void Reset() { }
protected override void Reset()
{
base.Reset();
}
protected override void OnValidate()
{
base.OnValidate();
m_IsOnValidate = true;
}
#endif
protected override void OnDestroy()
{
base.OnDestroy();
for (int i = transform.childCount - 1; i >= 0; i--)
{
DestroyImmediate(transform.GetChild(i).gameObject);

View File

@@ -55,10 +55,17 @@ namespace XCharts.Runtime
protected override void Awake()
{
base.Awake();
raycastTarget = false;
SetActive(true);
}
protected override void OnDestroy()
{
base.OnDestroy();
GraphicRegistry.UnregisterGraphicForCanvas(canvas, this);
}
public void SetTextPadding(TextPadding padding)
{
m_PaddingLeft = padding.left;