build method

Widget build(
  1. BuildContext context, {
  2. Object? args,
})

Implementation

Widget build(BuildContext context, {Object? args}) {
  assert(
      ((singleAnimControllerBuilder != null ||
                  multipleAnimControllerBuilder != null) &&
              animListener != null) ||
          (singleAnimControllerBuilder == null &&
              multipleAnimControllerBuilder == null),
      'An Animated page was requested, but no listener was given.');
  assert(
      !(singleAnimControllerBuilder != null &&
          multipleAnimControllerBuilder != null),
      'Cannot have both a single and a multiple animation controller builder.');
  if (_presenter == null ||
      forceRebuild ||
      (_presenter?.presenterState == PresenterState.disposed &&
          rebuildIfDisposed)) {
    _presenter = presenterBuilder(context);
  }
  _presenter!.view = interfaceBuilder(context);
  _presenter!.args = args ?? this.args;
  // Widget content;
  Widget content = MVVMContent<P, M>(
    singleAnimController: singleAnimControllerBuilder,
    multipleAnimController: multipleAnimControllerBuilder,
    animListener: animListener,
  );
  return PresenterInherited<P, M>(
    key: key,
    presenter: _presenter!,
    builder: builder,
    child: content,
  );
}