优化大批量添加数据时卡顿严重的问题

This commit is contained in:
monitor1394
2019-09-27 18:18:07 +08:00
parent 82cc23548d
commit fde636e084
3 changed files with 9 additions and 5 deletions

View File

@@ -425,7 +425,7 @@ namespace XCharts
/// <summary>
/// Whether series animation enabel.
/// 启用或取消起始动画。
/// 启用或关闭起始动画。
/// </summary>
/// <param name="flag"></param>
public void AnimationEnable(bool flag)

View File

@@ -25,6 +25,8 @@ namespace XCharts
private List<XAxis> m_CheckXAxises = new List<XAxis>();
private List<YAxis> m_CheckYAxises = new List<YAxis>();
private Grid m_CheckCoordinate = Grid.defaultGrid;
private bool m_XAxisChanged;
private bool m_YAxisChanged;
protected override void Awake()
{
@@ -619,7 +621,7 @@ namespace XCharts
private void CheckYAxis()
{
if (!ChartHelper.IsValueEqualsList<YAxis>(m_CheckYAxises, m_YAxises))
if (m_YAxisChanged || !ChartHelper.IsValueEqualsList<YAxis>(m_CheckYAxises, m_YAxises))
{
foreach (var axis in m_CheckYAxises)
{
@@ -627,13 +629,14 @@ namespace XCharts
}
m_CheckYAxises.Clear();
foreach (var axis in m_YAxises) m_CheckYAxises.Add(axis.Clone());
m_YAxisChanged = false;
OnYAxisChanged();
}
}
private void CheckXAxis()
{
if (!ChartHelper.IsValueEqualsList<XAxis>(m_CheckXAxises, m_XAxises))
if (m_XAxisChanged || !ChartHelper.IsValueEqualsList<XAxis>(m_CheckXAxises, m_XAxises))
{
foreach (var axis in m_CheckXAxises)
{
@@ -641,6 +644,7 @@ namespace XCharts
}
m_CheckXAxises.Clear();
foreach (var axis in m_XAxises) m_CheckXAxises.Add(axis.Clone());
m_XAxisChanged = false;
OnXAxisChanged();
}
}

View File

@@ -93,7 +93,7 @@ namespace XCharts
public void AddXAxisData(string category, int xAxisIndex = 0)
{
m_XAxises[xAxisIndex].AddData(category, m_MaxCacheDataNumber);
OnXAxisChanged();
m_XAxisChanged = true;
}
/// <summary>
@@ -105,7 +105,7 @@ namespace XCharts
public void AddYAxisData(string category, int yAxisIndex = 0)
{
m_YAxises[yAxisIndex].AddData(category, m_MaxCacheDataNumber);
OnYAxisChanged();
m_YAxisChanged = true;
}
/// <summary>