/// <summary> /// 初始化 /// </summary> /// <param name="datas">一般应由红点编辑生成的json文件获得,也可以自定义</param> public void Init(ReddotData[] datas) { m_ReddotNodeDic = new Dictionary <string, ReddotNode>(); foreach (var data in datas) { if (!m_ReddotNodeDic.TryGetValue(data.key, out ReddotNode node)) { node = new ReddotNode(data.key); m_ReddotNodeDic.Add(data.key, node); } if (data.children != null) { foreach (var child in data.children) { if (!m_ReddotNodeDic.TryGetValue(child, out ReddotNode childNode)) { childNode = new ReddotNode(child); m_ReddotNodeDic.Add(child, childNode); } node.AddChild(childNode); } } } }
public void AddChild(ReddotNode node) { if (m_children is null) { m_children = new List <ReddotNode>(); } m_children.Add(node); if (node.m_parents is null) { node.m_parents = new List <ReddotNode>(); } node.m_parents.Add(this); }