private void ActionMgrExcuteHandler(object[] args) { if (args != null && args.Length > 0) { if (GetContext.GoalbalID != Convert.ToInt32(args[0])) { return; } isExecuteState = false; currAction = args[1] as IActionHandler <ActionTag>; if (preAction == null) { //直接执行CurrAction内容 if (currAction != null) { currAction.Enter(GetContext, () => { isExecuteState = true; }); } } else { //有之前执行的动作不能直接执行 //需要先进行退出之前的Handle //在载入之后的新Handle preAction.Exit(GetContext, () => { currAction.Enter(GetContext, () => { preAction = currAction; isExecuteState = true; }); }); } } }
public void InvokeExit() { handler.Exit(this); isUpdating = false; }