mirror of
https://github.com/XCharts-Team/XCharts.git
synced 2026-05-25 02:10:16 +00:00
优化大批量添加数据时卡顿严重的问题
This commit is contained in:
@@ -425,7 +425,7 @@ namespace XCharts
|
|||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Whether series animation enabel.
|
/// Whether series animation enabel.
|
||||||
/// 启用或取消起始动画。
|
/// 启用或关闭起始动画。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="flag"></param>
|
/// <param name="flag"></param>
|
||||||
public void AnimationEnable(bool flag)
|
public void AnimationEnable(bool flag)
|
||||||
|
|||||||
@@ -25,6 +25,8 @@ namespace XCharts
|
|||||||
private List<XAxis> m_CheckXAxises = new List<XAxis>();
|
private List<XAxis> m_CheckXAxises = new List<XAxis>();
|
||||||
private List<YAxis> m_CheckYAxises = new List<YAxis>();
|
private List<YAxis> m_CheckYAxises = new List<YAxis>();
|
||||||
private Grid m_CheckCoordinate = Grid.defaultGrid;
|
private Grid m_CheckCoordinate = Grid.defaultGrid;
|
||||||
|
private bool m_XAxisChanged;
|
||||||
|
private bool m_YAxisChanged;
|
||||||
|
|
||||||
protected override void Awake()
|
protected override void Awake()
|
||||||
{
|
{
|
||||||
@@ -619,7 +621,7 @@ namespace XCharts
|
|||||||
|
|
||||||
private void CheckYAxis()
|
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)
|
foreach (var axis in m_CheckYAxises)
|
||||||
{
|
{
|
||||||
@@ -627,13 +629,14 @@ namespace XCharts
|
|||||||
}
|
}
|
||||||
m_CheckYAxises.Clear();
|
m_CheckYAxises.Clear();
|
||||||
foreach (var axis in m_YAxises) m_CheckYAxises.Add(axis.Clone());
|
foreach (var axis in m_YAxises) m_CheckYAxises.Add(axis.Clone());
|
||||||
|
m_YAxisChanged = false;
|
||||||
OnYAxisChanged();
|
OnYAxisChanged();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void CheckXAxis()
|
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)
|
foreach (var axis in m_CheckXAxises)
|
||||||
{
|
{
|
||||||
@@ -641,6 +644,7 @@ namespace XCharts
|
|||||||
}
|
}
|
||||||
m_CheckXAxises.Clear();
|
m_CheckXAxises.Clear();
|
||||||
foreach (var axis in m_XAxises) m_CheckXAxises.Add(axis.Clone());
|
foreach (var axis in m_XAxises) m_CheckXAxises.Add(axis.Clone());
|
||||||
|
m_XAxisChanged = false;
|
||||||
OnXAxisChanged();
|
OnXAxisChanged();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -93,7 +93,7 @@ namespace XCharts
|
|||||||
public void AddXAxisData(string category, int xAxisIndex = 0)
|
public void AddXAxisData(string category, int xAxisIndex = 0)
|
||||||
{
|
{
|
||||||
m_XAxises[xAxisIndex].AddData(category, m_MaxCacheDataNumber);
|
m_XAxises[xAxisIndex].AddData(category, m_MaxCacheDataNumber);
|
||||||
OnXAxisChanged();
|
m_XAxisChanged = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -105,7 +105,7 @@ namespace XCharts
|
|||||||
public void AddYAxisData(string category, int yAxisIndex = 0)
|
public void AddYAxisData(string category, int yAxisIndex = 0)
|
||||||
{
|
{
|
||||||
m_YAxises[yAxisIndex].AddData(category, m_MaxCacheDataNumber);
|
m_YAxises[yAxisIndex].AddData(category, m_MaxCacheDataNumber);
|
||||||
OnYAxisChanged();
|
m_YAxisChanged = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
Reference in New Issue
Block a user