public override void HandleEvent(QMsg msg) { AvoidMsg am = msg as AvoidMsg; AvoidControll_E ace = am.controllmode; switch (ace) { case AvoidControll_E.Edit: break; case AvoidControll_E.Save: break; case AvoidControll_E.Remove: break; case AvoidControll_E.HiddenSingle: case AvoidControll_E.DisplaySingle: case AvoidControll_E.HiddenAll: case AvoidControll_E.DisplayAll: DisplayControll(ace); break; default: break; } }
public void HandleEvent(QMsg msg) { AvoidMsg am = msg as AvoidMsg; AvoidControll_E ace = am.controllmode; currentcontrollmode = ace; currentcontrollindex = am.index; switch (currentcontrollmode) { case AvoidControll_E.Ido: break; case AvoidControll_E.Edit: OnEdit(); break; case AvoidControll_E.Save: OnSave(); break; case AvoidControll_E.Remove: OnRemove(); break; default: break; } }
void Send(AvoidControll_E ace, int _index = -1) { QMsg useravoidmsg = new AvoidMsg() { EventID = (int)Avoid_E.Begin, controllmode = ace, index = _index }; AvoidManager.Instance.SendMsg(useravoidmsg); }
void DisplayControll(AvoidControll_E ace) { switch (ace) { case AvoidControll_E.HiddenSingle: case AvoidControll_E.HiddenAll: ControllMesh(false); break; case AvoidControll_E.DisplaySingle: case AvoidControll_E.DisplayAll: ControllMesh(true); break; default: break; } }
void Start() { GameObject prefab = transform.Find("Panel/Scroll View/Viewport/Content/AvoidvacancyItem").gameObject; Transform parent = prefab.transform.parent; InitPool(10, prefab); transform.Find("Panel/AddButton").GetComponent <Button>().onClick.AddListener(() => { GameObject go = SpawnChildren(SpawnChild.FirstPoolItem, parent); int index = go.transform.parent.childCount - 2; //添加(只表现在UI上) childmap.Add(index, go); go.GetComponentInChildren <Text>().text = "第" + (index + 1) + "个避空位"; //删除 go.transform.Find("Button").GetComponent <Button>().onClick.AddListener(() => { Destroy(go); childmap.Remove(index); Send(AvoidControll_E.Remove, index); }); //编辑 go.transform.Find("Button (1)").GetComponent <Button>().onClick.AddListener(() => { transform.Find("Panel (2)").gameObject.SetActive(true); Send(AvoidControll_E.Edit, index); if (lastchoise == index) { return; } go.GetComponent <Image>().color = Color.green; if (childmap.ContainsKey(lastchoise)) { childmap[lastchoise].GetComponent <Image>().color = Color.gray; } lastchoise = index; }); //显示/隐藏 go.transform.Find("Toggle").GetComponent <Toggle>().onValueChanged.AddListener((iSon) => { AvoidControll_E ace = AvoidControll_E.DisplaySingle; if (!iSon) { ace = AvoidControll_E.HiddenSingle; } Send(ace, index); }); }); //隐藏/显示全部 transform.Find("Panel/AllToggle").GetComponent <Toggle>().onValueChanged.AddListener((iSon) => { AvoidControll_E ace = AvoidControll_E.DisplayAll; if (!iSon) { ace = AvoidControll_E.HiddenAll; } Send(ace); }); //保存 transform.Find("Panel (2)/Button").GetComponent <Button>().onClick.AddListener(() => { transform.Find("Panel (2)").gameObject.SetActive(false); Send(AvoidControll_E.Save); }); //取消 transform.Find("Panel (2)/Button (1)").GetComponent <Button>().onClick.AddListener(() => { transform.Find("Panel (2)").gameObject.SetActive(false); Send(AvoidControll_E.Cancle); }); //重置 transform.Find("Panel (2)/Button (2)").GetComponent <Button>().onClick.AddListener(() => { transform.Find("Panel (2)").gameObject.SetActive(false); // MSGCenter.Execute(Enums.AvoidvacancyControll.Reset.ToString()); }); }