popNavigator method

dynamic popNavigator(
  1. BuildContext context, [
  2. bool useRootNavigator = false
])

Implementation

popNavigator(BuildContext context, [bool useRootNavigator = false]) {
  Tools.closeAllDialogs();
  Tools.closeAllFloating();
    if (context.mounted) {
      final navigator = Navigator.of(context);
      if (navigator.canPop()) {
        TCICLog.info('popNavigator: canPop', actionModule: ActionModule.tcicController.name, actionName: ActionName.popNavigator.name);
        setIsTCICDestroy(true);
        navigator.pop();
      } else {
        TCICLog.info('popNavigator: can not pop', actionModule: ActionModule.tcicController.name, actionName: ActionName.popNavigator.name);
      }
    } else {
     if(_rootContext != null){
      final navigator = Navigator.of(_rootContext!);
      if (navigator.canPop()) {
        TCICLog.info('popNavigator: canPop', actionModule: ActionModule.tcicController.name, actionName: ActionName.popNavigator.name);
        setIsTCICDestroy(true);
        navigator.pop();
      } else {
        TCICLog.info('popNavigator: can not pop', actionModule: ActionModule.tcicController.name, actionName: ActionName.popNavigator.name);
      }
     } else {
      TCICLog.error("rootContext is null", actionModule: ActionModule.tcicController.name, actionName: ActionName.popNavigator.name);
      // 获取当前栈顶的context
     }
    }
    _eventbus.fire(MainEvent(type: EventTypeEnum.pagePop));
}