mirror of
https://github.com/XCharts-Team/XCharts.git
synced 2026-05-30 05:08:48 +00:00
优化Legend初始化,防止出现预设下删除异常的问题
This commit is contained in:
@@ -46,8 +46,7 @@ namespace XCharts
|
|||||||
var objAnchorMin = legend.location.runtimeAnchorMin;
|
var objAnchorMin = legend.location.runtimeAnchorMin;
|
||||||
var objAnchorMax = legend.location.runtimeAnchorMax;
|
var objAnchorMax = legend.location.runtimeAnchorMax;
|
||||||
var objPivot = legend.location.runtimePivot;
|
var objPivot = legend.location.runtimePivot;
|
||||||
|
var btnObj = ChartHelper.AddObject(objName, parent, objAnchorMin, objAnchorMax, objPivot, sizeDelta, i);
|
||||||
var btnObj = ChartHelper.AddObject(objName, parent, objAnchorMin, objAnchorMax, objPivot, sizeDelta);
|
|
||||||
var iconObj = ChartHelper.AddObject("icon", btnObj.transform, anchorMin, anchorMax, pivot, iconSizeDelta);
|
var iconObj = ChartHelper.AddObject("icon", btnObj.transform, anchorMin, anchorMax, pivot, iconSizeDelta);
|
||||||
var contentObj = ChartHelper.AddObject("content", btnObj.transform, anchorMin, anchorMax, pivot, sizeDelta);
|
var contentObj = ChartHelper.AddObject("content", btnObj.transform, anchorMin, anchorMax, pivot, sizeDelta);
|
||||||
var img = ChartHelper.GetOrAddComponent<Image>(btnObj);
|
var img = ChartHelper.GetOrAddComponent<Image>(btnObj);
|
||||||
|
|||||||
@@ -291,7 +291,7 @@ namespace XCharts
|
|||||||
totalLegend++;
|
totalLegend++;
|
||||||
}
|
}
|
||||||
m_Legend.RemoveButton();
|
m_Legend.RemoveButton();
|
||||||
ChartHelper.DestroyAllChildren(legendObject.transform);
|
ChartHelper.HideAllObject(legendObject);
|
||||||
if (!m_Legend.show) return;
|
if (!m_Legend.show) return;
|
||||||
for (int i = 0; i < datas.Count; i++)
|
for (int i = 0; i < datas.Count; i++)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -108,7 +108,6 @@ namespace XCharts
|
|||||||
if (go != null)
|
if (go != null)
|
||||||
{
|
{
|
||||||
GameObject.DestroyImmediate(go.gameObject);
|
GameObject.DestroyImmediate(go.gameObject);
|
||||||
//GameObject.Destroy(go.gameObject);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -140,7 +139,7 @@ namespace XCharts
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static GameObject AddObject(string name, Transform parent, Vector2 anchorMin,
|
public static GameObject AddObject(string name, Transform parent, Vector2 anchorMin,
|
||||||
Vector2 anchorMax, Vector2 pivot, Vector2 sizeDelta)
|
Vector2 anchorMax, Vector2 pivot, Vector2 sizeDelta, int replaceIndex = -1)
|
||||||
{
|
{
|
||||||
GameObject obj;
|
GameObject obj;
|
||||||
if (parent.Find(name))
|
if (parent.Find(name))
|
||||||
@@ -150,6 +149,12 @@ namespace XCharts
|
|||||||
obj.transform.localPosition = Vector3.zero;
|
obj.transform.localPosition = Vector3.zero;
|
||||||
obj.transform.localScale = Vector3.one;
|
obj.transform.localScale = Vector3.one;
|
||||||
}
|
}
|
||||||
|
else if (replaceIndex >= 0 && replaceIndex < parent.childCount)
|
||||||
|
{
|
||||||
|
obj = parent.GetChild(replaceIndex).gameObject;
|
||||||
|
if (!obj.name.Equals(name)) obj.name = name;
|
||||||
|
SetActive(obj, true);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
obj = new GameObject();
|
obj = new GameObject();
|
||||||
|
|||||||
@@ -108,7 +108,7 @@ namespace XChartsDemo
|
|||||||
var btnPanel = transform.Find("chart_list");
|
var btnPanel = transform.Find("chart_list");
|
||||||
m_BtnClone = transform.Find("btn_clone").gameObject;
|
m_BtnClone = transform.Find("btn_clone").gameObject;
|
||||||
m_BtnClone.SetActive(false);
|
m_BtnClone.SetActive(false);
|
||||||
ChartHelper.DestroyAllChildren(btnPanel);
|
ChartHelper.HideAllObject(btnPanel);
|
||||||
foreach (var module in m_ChartModule)
|
foreach (var module in m_ChartModule)
|
||||||
{
|
{
|
||||||
var btnName = "btn_" + module.name;
|
var btnName = "btn_" + module.name;
|
||||||
@@ -116,7 +116,8 @@ namespace XChartsDemo
|
|||||||
if (btnPanel.Find(btnName))
|
if (btnPanel.Find(btnName))
|
||||||
{
|
{
|
||||||
btn = btnPanel.Find(btnName).gameObject;
|
btn = btnPanel.Find(btnName).gameObject;
|
||||||
btn.SetActive(true);
|
btn.name = btnName;
|
||||||
|
ChartHelper.SetActive(btn, true);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user