/// <summary> /// 使用数据创建Tree /// </summary> public void CreateByData(string treeName, RectTransform parentTrm, RectTransform treeRootTrm, float offx, float offy, byte[] data) { Name = treeName; IoBuffer ib = new IoBuffer(); ib.PutBytes(data); bool bFolder = ib.GetBool(); //这里第一个节点一定是根节点,但是还是按正常数据读下 string name = ib.GetString(); int listSize = ib.GetInt(); //VLog.I("TreeContainer","CreateByData","bFolder:"+bFolder+" name:"+name+" listSize:"+listSize); //这里需要创建 TreeRootTrm = treeRootTrm; RootFolder = TreeFolder.CreateRootFolder(treeName, parentTrm, this, offx, offy); for (int i = 0; i < listSize; i++) { //CreateOneItem(ib); bFolder = ib.GetBool(); if (bFolder) { RootFolder.AddFolderByData(ib); } else { RootFolder.AddItemByData(ib); } } }
/// <summary> /// 创建可折叠菜单列表 /// </summary> /// <param name="name">Name.</param> /// <param name="parentTrm">Parent trm.</param> /// <param name="offx">Offx.</param> /// <param name="offy">Offy.</param> public void Create(string treeName, RectTransform parentTrm, RectTransform treeRootTrm, float offx, float offy) { Name = treeName; TreeRootTrm = treeRootTrm; RootFolder = TreeFolder.CreateRootFolder(treeName, parentTrm, this, offx, offy); //读取menu文件夹文件结构 //设置位置 }