protected virtual void ClearCache(bool hideIfExpanded) { if (_CachedPrefabAdress != null) { _CachedPrefabAdress.ClearCache(); _CachedPrefabAdress = null; } if (m_CustomFramePrefabAddress != null) { m_CustomFramePrefabAddress.ClearCache(); } if (hideIfExpanded && IsExpanded()) { _CacheDialogList.activity.destroyOnHide = true; _CacheDialogList.Hide(); } #if UNITY_EDITOR Resources.UnloadUnusedAssets(); #endif }
public static GameObject InstantiateGameObject(PrefabAddress addressAsset, Transform parent) { return(InstantiateGameObject(addressAsset != null ? addressAsset.Name : "", parent)); }
public static void InstantiateGameObjectAsync(PrefabAddress addressAsset, Transform parent, System.Action <string, GameObject> callback) { InstantiateGameObjectAsync(addressAsset != null ? addressAsset.Name : "", parent, callback); }
private KeyValuePair <string, ToastAnimator> InstantiateAnimator_Internal(string assetPath, PrefabAddress defaultAdress, Transform parent) { if (string.IsNullOrEmpty(assetPath)) { assetPath = defaultAdress != null ? defaultAdress.Name : null; } ToastAnimator currentAnimator = null; _AnimatorsCache.TryGetValue(assetPath, out currentAnimator); if (currentAnimator == null) { var Instance = PrefabManager.InstantiateGameObject(assetPath, transform); if (Instance == null) { Instance = PrefabManager.InstantiateGameObject(defaultAdress != null ? defaultAdress.Name : null, transform); } currentAnimator = Instance.GetComponent <ToastAnimator>(); if (!string.IsNullOrEmpty(assetPath)) { _AnimatorsCache[assetPath] = currentAnimator; } } if (currentAnimator != null) { currentAnimator.transform.SetParent(parent); currentAnimator.transform.localScale = Vector3.one; currentAnimator.transform.localRotation = Quaternion.identity; currentAnimator.transform.SetAsLastSibling(); } return(new KeyValuePair <string, ToastAnimator>(assetPath, currentAnimator)); }