scwang90 / SmartRefreshLayout

🔥下拉刷新、上拉加载、二级刷新、淘宝二楼、RefreshLayout、OverScroll,Android智能下拉刷新框架,支持越界回弹、越界拖动,具有极强的扩展性,集成了几十种炫酷的Header和 Footer。
https://segmentfault.com/a/1190000010066071
Apache License 2.0
24.79k stars 4.93k forks source link

java.lang.ArrayIndexOutOfBoundsException #1546

Open XM-XiaoMa opened 7 months ago

XM-XiaoMa commented 7 months ago

依赖版本: com.scwang.smartrefresh:SmartRefreshLayout:1.0.5.1

设备信息: image

问题: 抱歉用的版本比较旧,线上有些问题麻烦大佬小小瞄一眼,幸甚至哉。 java.lang.ArrayIndexOutOfBoundsException length=101; index=-36

0 | android.widget.Scroller.computeScrollOffset(Scroller.java:337) 1 | com.scwang.smartrefresh.layout.SmartRefreshLayout.computeScroll(SmartRefreshLayout.java:2) 2 | android.view.View.updateDisplayListIfDirty(View.java:22280) 3 | android.view.View.draw(View.java:23174) 4 | android.view.ViewGroup.drawChild(ViewGroup.java:4615) 5 | android.view.ViewGroup.dispatchDraw(ViewGroup.java:4368) 6 | android.view.View.updateDisplayListIfDirty(View.java:22288) 7 | android.view.View.draw(View.java:23174) 8 | android.view.ViewGroup.drawChild(ViewGroup.java:4615) 9 | android.view.ViewGroup.dispatchDraw(ViewGroup.java:4368) 10 | android.view.View.updateDisplayListIfDirty(View.java:22288) 11 | android.view.View.draw(View.java:23174) 12 | android.view.ViewGroup.drawChild(ViewGroup.java:4615) 13 | android.view.ViewGroup.dispatchDraw(ViewGroup.java:4368) 14 | android.view.View.draw(View.java:23469) 15 | androidx.viewpager.widget.ViewPager.draw(ViewPager.java:1) 16 | android.view.View.updateDisplayListIfDirty(View.java:22297) 17 | android.view.View.draw(View.java:23174) 18 | android.view.ViewGroup.drawChild(ViewGroup.java:4615) 19 | android.view.ViewGroup.dispatchDraw(ViewGroup.java:4368) 20 | androidx.constraintlayout.widget.ConstraintLayout.dispatchDraw(ConstraintLayout.java:5) 21 | android.view.View.updateDisplayListIfDirty(View.java:22288) 22 | android.view.View.draw(View.java:23174) 23 | android.view.ViewGroup.drawChild(ViewGroup.java:4615) 24 | android.view.ViewGroup.dispatchDraw(ViewGroup.java:4368) 25 | android.view.View.draw(View.java:23469) 26 | androidx.viewpager.widget.ViewPager.draw(ViewPager.java:1) 27 | android.view.View.updateDisplayListIfDirty(View.java:22297) 28 | android.view.View.draw(View.java:23174) 29 | android.view.ViewGroup.drawChild(ViewGroup.java:4615) 30 | android.view.ViewGroup.dispatchDraw(ViewGroup.java:4368) 31 | android.view.View.updateDisplayListIfDirty(View.java:22288) 32 | android.view.View.draw(View.java:23174) 33 | android.view.ViewGroup.drawChild(ViewGroup.java:4615) 34 | android.view.ViewGroup.dispatchDraw(ViewGroup.java:4368) 35 | android.view.View.updateDisplayListIfDirty(View.java:22288) 36 | android.view.View.draw(View.java:23174) 37 | android.view.ViewGroup.drawChild(ViewGroup.java:4615) 38 | android.view.ViewGroup.dispatchDraw(ViewGroup.java:4368) 39 | android.view.View.updateDisplayListIfDirty(View.java:22288) 40 | android.view.View.draw(View.java:23174) 41 | android.view.ViewGroup.drawChild(ViewGroup.java:4615) 42 | android.view.ViewGroup.dispatchDraw(ViewGroup.java:4368) 43 | android.view.View.updateDisplayListIfDirty(View.java:22288) 44 | android.view.View.draw(View.java:23174) 45 | android.view.ViewGroup.drawChild(ViewGroup.java:4615) 46 | android.view.ViewGroup.dispatchDraw(ViewGroup.java:4368) 47 | android.view.View.updateDisplayListIfDirty(View.java:22288) 48 | android.view.View.draw(View.java:23174) 49 | android.view.ViewGroup.drawChild(ViewGroup.java:4615) 50 | android.view.ViewGroup.dispatchDraw(ViewGroup.java:4368) 51 | android.view.View.draw(View.java:23469) 52 | com.android.internal.policy.DecorView.draw(DecorView.java:888) 53 | android.view.View.updateDisplayListIfDirty(View.java:22297) 54 | android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:682) 55 | android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:688) 56 | android.view.ThreadedRenderer.draw(ThreadedRenderer.java:790) 57 | android.view.ViewRootImpl.draw(ViewRootImpl.java:4898) 58 | android.view.ViewRootImpl.performDraw(ViewRootImpl.java:4593) 59 | android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3759) 60 | android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2453) 61 | android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:9468) 62 | android.view.Choreographer$CallbackRecord.run(Choreographer.java:1405) 63 | android.view.Choreographer$CallbackRecord.run(Choreographer.java:1413) 64 | android.view.Choreographer.doCallbacks(Choreographer.java:1040) 65 | android.view.Choreographer.doFrame(Choreographer.java:930) 66 | android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1388) 67 | android.os.Handler.handleCallback(Handler.java:942) 68 | android.os.Handler.dispatchMessage(Handler.java:99) 69 | android.os.Looper.loopOnce(Looper.java:240) 70 | android.os.Looper.loop(Looper.java:351) 71 | android.app.ActivityThread.main(ActivityThread.java:8423) 72 | java.lang.reflect.Method.invoke(Native Method) 73 | com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:584) 74 | com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1013)

wys619 commented 5 months ago

同样问题

sprist commented 5 months ago

是不是跟SmartRefreshLayout内部Scroller.fling的调用有关,会重置Scroller的startTime。

Ryan-Shz commented 3 months ago

同样的问题,请问解决了吗?

thaixp commented 2 months ago

同样有这个问题,请求怎么解决的

luojt commented 1 month ago

我好像也是同样的问题