示例#1
0
        protected override void OnPrepare()
        {
            Name     = this.GetType().Name;
            instance = this;

            //add canvas相关组件
            CanvasRenderer cr = transform.GetComponent <CanvasRenderer>();

            if (!cr)
            {
                transform.gameObject.AddComponent <CanvasRenderer>();
            }

            Canvas cv = transform.GetComponent <Canvas>();

            if (!cv)
            {
                transform.gameObject.AddComponent <Canvas>();
            }

            GraphicRaycaster gr = transform.GetComponent <GraphicRaycaster>();

            if (!gr)
            {
                transform.gameObject.AddComponent <GraphicRaycaster>();
            }

            base.OnPrepare();
            UIPoolManager.GetInstance.PushPool(this);
        }
示例#2
0
        //传入UI类的字符串
        public void Open(string dialog)
        {
            //先检测对象池里有没有,有就显示池子里的,没有就加载一个
            UIDialog dia = UIPoolManager.GetInstance.GetDialogInPool(dialog);

            if (dia)
            {
                dia.OpenShow();
                return;
            }

            //load asset
            string path = UIConfig.dialogPath[dialog];

            AssetLoader.Instance.Load(path, LoadUIAssetOK);
        }
示例#3
0
 protected override void OnClose()
 {
     base.OnClose();
     IsClose  = true;
     instance = null;
 }