private void LoadUIFormSuccessCallback(string uiFormAssetName, object uiFormAsset, float duration, object userData) { OpenUIFormInfo openUIFormInfo = (OpenUIFormInfo)userData; if (openUIFormInfo == null) { Debug.LogError("打开界面的信息为空"); return; } m_UIFormsBeingLoaded.Remove(openUIFormInfo.SerialId); m_UIFormAssetNamesBeingLoaded.Remove(uiFormAssetName); if (m_UIFormsToReleaseOnLoad.Contains(openUIFormInfo.SerialId)) { Debug.LogError(string.Format("需要释放的界面:{0} 加载成功", openUIFormInfo.SerialId.ToString())); m_UIFormsToReleaseOnLoad.Remove(openUIFormInfo.SerialId); m_UIFormHelper.ReleaseUIForm(uiFormAsset, null); return; } //实例化界面,并将界面实例对象放入对象池 UIFormInstanceObject uiFormInstanceObject = new UIFormInstanceObject(uiFormAssetName, uiFormAsset, m_UIFormHelper.InstantiateUIForm(uiFormAsset), m_UIFormHelper); m_InstancePool.Register(uiFormInstanceObject, true); //打开界面 OpenUIForm(openUIFormInfo.SerialId, uiFormAssetName, openUIFormInfo.UIGroup, uiFormInstanceObject.Target, openUIFormInfo.PauseCoveredUIForm, true, duration, openUIFormInfo.UserData); }
public override void Release() { m_UIFormHelper.ReleaseUIForm(m_UIFormAsset, Target); }