docs: public void setState(@FloatRange(from = 0f, to = 1f) float pos,
              boolean leaving, boolean animate) {
          if (!isActivated) {
              throw new IllegalStateException(
                      "You should call enter(...) before calling setState(...)");
          }
  
          stopAnimation();
          position = pos < 0f ? 0f : (pos > 1f ? 1f : pos);
          isLeaving = leaving;
          if (animate) {
              startAnimationInternal();
          }
          applyCurrentPosition();
      }