/// <summary> /// 初始化关闭界面完成事件的新实例。 /// </summary> /// <param name="e">内部事件。</param> public CloseUIFormCompleteEventArgs(GameFramework.UI.CloseUIFormCompleteEventArgs e) { SerialId = e.SerialId; UIFormAssetName = e.UIFormAssetName; UIGroup = e.UIGroup; UserData = e.UserData; }
private void OnCloseUIFormComplete(object sender, GameFramework.UI.CloseUIFormCompleteEventArgs e) { if (m_EnableCloseUIFormCompleteEvent) { m_EventComponent.Fire(this, new CloseUIFormCompleteEventArgs(e)); } }
/// <summary> /// 关闭界面。 /// </summary> /// <param name="uiForm">要关闭的界面。</param> /// <param name="userData">用户自定义数据。</param> public void CloseUIForm(IUIForm uiForm, object userData) { if (uiForm == null) { throw new GameFrameworkException("UI form is invalid."); } UIGroup uiGroup = (UIGroup)uiForm.UIGroup; if (uiGroup == null) { throw new GameFrameworkException("UI group is invalid."); } uiGroup.RemoveUIForm(uiForm); uiForm.OnClose(m_IsShutdown, userData); uiGroup.Refresh(); if (m_CloseUIFormCompleteEventHandler != null) { CloseUIFormCompleteEventArgs closeUIFormCompleteEventArgs = CloseUIFormCompleteEventArgs.Create(uiForm.SerialId, uiForm.UIFormAssetName, uiGroup, userData); m_CloseUIFormCompleteEventHandler(this, closeUIFormCompleteEventArgs); ReferencePool.Release(closeUIFormCompleteEventArgs); } m_RecycleQueue.Enqueue(uiForm); }
private void OnCloseUIFormComplete(object sender, GameFramework.UI.CloseUIFormCompleteEventArgs e) { if (m_EnableCloseUIFormCompleteEvent) { m_EventComponent.Fire(this, ReferencePool.Acquire <CloseUIFormCompleteEventArgs>().Fill(e)); } }
/// <summary> /// 创建关闭界面完成事件。 /// </summary> /// <param name="e">内部事件。</param> /// <returns>创建的关闭界面完成事件。</returns> public static CloseUIFormCompleteEventArgs Create(GameFramework.UI.CloseUIFormCompleteEventArgs e) { CloseUIFormCompleteEventArgs closeUIFormCompleteEventArgs = ReferencePool.Acquire <CloseUIFormCompleteEventArgs>(); closeUIFormCompleteEventArgs.SerialId = e.SerialId; closeUIFormCompleteEventArgs.UIFormAssetName = e.UIFormAssetName; closeUIFormCompleteEventArgs.UIGroup = e.UIGroup; closeUIFormCompleteEventArgs.UserData = e.UserData; return(closeUIFormCompleteEventArgs); }
private void OnCloseUIFormComplete(object sender, GameFramework.UI.CloseUIFormCompleteEventArgs e) { m_EventComponent.Fire(this, CloseUIFormCompleteEventArgs.Create(e)); }