示例#1
0
        internal bool LoadView <T>(Transform _tContainer, bool _bVisible) where T : ULevel1_SubViewBase
        {
            ResNode viewPrefab = AssetBundleManager.GetAssets(AssetType.Asset_Prefab, "UI/Prefabs/" + GetSubPrefabPath <T>());

            if (null == viewPrefab)
            {
                return(false);
            }

            GameObject instance = viewPrefab.InstanceMainRes();

            if (!instance)
            {
                return(false);
            }

            instance.name = viewPrefab.AssetName;
            ULevel1_SubViewBase subView = instance.GetComponent <T>() as ULevel1_SubViewBase;

            if (subView == null)
            {
                Debug.LogError("UISystem SubWnd LoadView m_wndView == null  GetPrefabPath=" + GetSubPrefabPath <T>());
                viewPrefab.DestroyInstanceRes(ref instance);
                return(false);
            }

            if (subView.Init(this) == false)
            {
                Debug.LogError("UISystem SubWnd LoadView m_wndView.Init == false  GetPrefabPath=" + GetSubPrefabPath <T>());
                viewPrefab.DestroyInstanceRes(ref instance);
                return(false);
            }

            subView.GetTransform.SetParent(_tContainer, false);
            subView.SetVisible(_bVisible);

            m_dicSubView.Add(subView.GetSubViewType, subView);
            return(true);
        }
示例#2
0
        internal virtual bool Init(ULevel1_SubViewBase _view)
        {
            m_parentView = _view;

            return(true);
        }