title: Page(s) contain a ViewGroup with a LayoutTransition (or animateLayoutChanges="true"), which interferes with the scrolling animation
body: <p>I use fragments with ViewPager2, and I notice two relevant IllegalStateExceptions in production (I can't reproduce it myself) occurring in devices like Xiaomi, Yulong, asus, vivo running Android 8 or 9:</p>
  
  <pre><code>Fatal Exception: java.lang.IllegalStateException: Page can only be offset by a positive amount, not by -758
         at androidx.viewpager2.widget.ScrollEventAdapter.updateScrollEventValues(ScrollEventAdapter.java:280)
         at androidx.viewpager2.widget.ScrollEventAdapter.onScrolled(ScrollEventAdapter.java:178)
         at androidx.recyclerview.widget.RecyclerView.dispatchOnScrolled(RecyclerView.java:5173)
         at androidx.recyclerview.widget.RecyclerView$ViewFlinger.run(RecyclerView.java:5338)
         at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1029)
         at android.view.Choreographer.doCallbacks(Choreographer.java:834)
         at android.view.Choreographer.doFrame(Choreographer.java:760)
         at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1015)
         at android.os.Handler.handleCallback(Handler.java:873)
         at android.os.Handler.dispatchMessage(Handler.java:99)
         at android.os.Looper.loop(Looper.java:224)
         at android.app.ActivityThread.main(ActivityThread.java:7083)
         at java.lang.reflect.Method.invoke(Method.java)
         at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537)
         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:928)
  </code></pre>
  
  <p>and</p>
  
  <pre><code>Fatal Exception: java.lang.IllegalStateException: Page(s) contain a ViewGroup with a LayoutTransition (or animateLayoutChanges="true"), which interferes with the scrolling animation. Make sure to call getLayoutTransition().setAnimateParentHierarchy(false) on all ViewGroups with a LayoutTransition before an animation is started.
         at androidx.viewpager2.widget.ScrollEventAdapter.updateScrollEventValues(ScrollEventAdapter.java:272)
         at androidx.viewpager2.widget.ScrollEventAdapter.onScrolled(ScrollEventAdapter.java:178)
         at androidx.recyclerview.widget.RecyclerView.dispatchOnScrolled(RecyclerView.java:5173)
         at androidx.recyclerview.widget.RecyclerView$ViewFlinger.run(RecyclerView.java:5338)
         at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1029)
         at android.view.Choreographer.doCallbacks(Choreographer.java:841)
         at android.view.Choreographer.doFrame(Choreographer.java:769)
         at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1015)
         at android.os.Handler.handleCallback(Handler.java:794)
         at android.os.Handler.dispatchMessage(Handler.java:99)
         at android.os.Looper.loop(Looper.java:176)
         at android.app.ActivityThread.main(ActivityThread.java:6651)
         at java.lang.reflect.Method.invoke(Method.java)
         at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:824)
  </code></pre>
  
  <p>While looking around, I passed by the following thread: <a href="https://issuetracker.google.com/issues/129530305" rel="noreferrer">https://issuetracker.google.com/issues/129530305</a>, which as I understood correctly, seems to summarize to set <code>animateLayoutChanges</code> to false on any parent layout of viewPager2 and that's what I did. Unfortunately, that didn't solve my issue. Then I found another thread: <a href="https://stackoverflow.com/questions/59660691/java-lang-illegalstateexception-page-can-only-be-offset-by-a-positive-amount">java.lang.IllegalStateException: Page can only be offset by a positive amount</a>, which seems to not help a lot. Any idea what else might cause the issue?</p>