public static HCanvas GetData(HGUIRender render) { string guid = render.GetGuid(); for (int i = 0; i < CanvasCash.Count; i++) { if (guid == CanvasCash[i].guid) { return(CanvasCash[i].Root as HCanvas); } } string dic = Environment.CurrentDirectory + "/hgui2"; string path = dic + "/" + render.GetGuid() + ".bytes"; if (File.Exists(path)) { byte[] dat = File.ReadAllBytes(path); huqiang.Core.HGUI.UIElement.DisposeAll(); if (HGUIManager.GameBuffer == null) { HGUIManager.Initial(); } if (render.canvas == null) { render.canvas = new HCanvas(); } CloneAll(new DataBuffer(dat), render.canvas); DataContext dc = new DataContext(); dc.guid = guid; dc.Root = render.canvas; CanvasCash.Add(dc); return(render.canvas); } return(null); }
public override void OnInspectorGUI() { base.OnInspectorGUI(); render = target as HGUIRender; if (GUILayout.Button("Test")) { Test(); } if (GUI.changed) { UIHierarchy.ChangeRoot(render.GetGuid(), render.canvas); } }