setPage method

void setPage(
  1. int page
)

Implementation

void setPage(int page) {
  if (widget.pageController != null) {
    widget.pageController!.removeListener(_pageControllerListener);
    var f = widget.pageController!.animateToPage(page,
        duration: Duration(milliseconds: ANIM_DURATION),
        curve: Curves.easeOut);

    f.then((v) {
      // be shure that listener is added only one times
      // ignore: INVALID_USE_OF_PROTECTED_MEMBER
      if (!widget.pageController!.hasListeners) {
        widget.pageController!.addListener(_pageControllerListener);
      }
    });

    _setSelected(widget.tabs[page].key);
    _initAnimationAndStart(0);
  } else {
    widget.onTabChangedListener!(page);

    _setSelected(widget.tabs[page].key);
    _initAnimationAndStart(0);

    setState(() {
      currentSelected = page;
    });
  }
}