关于recyclerView上下滑动时的崩溃问题
2016-11-03 11:28
393 查看
昨天遇到一个神奇并且很难缠的bug……
RecyclerView上下滑动的时候崩溃,崩溃信息如下:
搜遍了Google,百度,github,stackoverflow……都没有解决,算了自己动手丰衣足食。经过两天研究这么解决了:
Java中如下:
解决了,好开心哈哈哈
RecyclerView上下滑动的时候崩溃,崩溃信息如下:
java.lang.IndexOutOfBoundsException Inconsistency detected. Invalid item position 16(offset:16).state:64 android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4957) android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4913) android.support.v7.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2029) android.support.v7.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1414) android.support.v7.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1377) android.support.v7.widget.LinearLayoutManager.scrollBy(LinearLayoutManager.java:1193) android.support.v7.widget.LinearLayoutManager.scrollVerticallyBy(LinearLayoutManager.java:1043) android.support.v7.widget.RecyclerView$ViewFlinger.run(RecyclerView.java:4357) android.view.Choreographer$CallbackRecord.run(Choreographer.java:793) android.view.Choreographer.doCallbacks(Choreographer.java:606) android.view.Choreographer.doFrame(Choreographer.java:574) android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:779) android.os.Handler.handleCallback(Handler.java:739) android.os.Handler.dispatchMessage(Handler.java:95) android.os.Looper.loop(Looper.java:135) android.app.ActivityThread.main(ActivityThread.java:5601) java.lang.reflect.Method.invoke(Native Method) java.lang.reflect.Method.invoke(Method.java:372) com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:964) com.android.internal.os.ZygoteInit.main(ZygoteInit.java:759)
搜遍了Google,百度,github,stackoverflow……都没有解决,算了自己动手丰衣足食。经过两天研究这么解决了:
/** * 去除动画防止,防止出现recyclerView的bug * Created by zhanglin on 2016/11/3. */ public class MyLinearLayoutManager extends LinearLayoutManager { public MyLinearLayoutManager(Context context) { super(context); } @Override public boolean supportsPredictiveItemAnimations() { return false; } public void onLayoutChildren(RecyclerView.Recycler recycler, RecyclerView.State state) { try { super.onLayoutChildren(recycler, state); } catch (IndexOutOfBoundsException e) { e.printStackTrace(); } } @Override public int scrollVerticallyBy(int dy, RecyclerView.Recycler recycler, RecyclerView.State state) { try { return super.scrollVerticallyBy(dy, recycler, state); } catch (Exception e) { e.printStackTrace(); } return 0; } }
Java中如下:
MyLinearLayoutManager myLinearLayoutManager = new MyLinearLayoutManager (mContext); recyclerView.setLayoutManager(myLinearLayoutManager );
解决了,好开心哈哈哈
相关文章推荐
- 关于recyclerView快速上下滑动时的崩溃问题
- 关于RecyclerView实现瀑布流,上下滑动时item之间互换位置的问题
- 关于RecyclerView实现瀑布流,上下滑动时item之间互换位置的问题
- 关于recyclerView水平滑动和垂直滑动时的崩溃问题
- 关于listview上下滑动imageview图片混乱问题
- 关于ScrollView嵌套RecyclerView高度,焦点,滑动,setOnScrollChangeListener问题的解决
- 修复在“Android 在ScrollView中嵌入ViewPage后ViewPage不能很好的工作的问题解决”这篇博客中MyScrollView出现滑动一会就不会上下滑动的问题
- Scrollview 嵌套 RecyclerView 及在Android 5.1版本滑动时 惯性消失问题
- iOS7中得关于UIScrollView的滑动问题
- 解决在scrollview上下滑动嵌套scrollview,viewpager水平滑动时问题
- android开发步步为营之71:CoordinatorLayout+AppBarLayout+RecyclerView+ViewPager打造可上下左右滑动的App主框架
- RecylerViewd的Item高度自适应,Scrollview 嵌套 RecyclerView 及在Android 5.1版本滑动时 惯性消失问题
- 关于viewpager的滑动问题
- 关于开源框架SuperRecyclerView瀑布流卡顿问题
- Scrollview 嵌套 RecyclerView 及在Android 5.1版本滑动时 惯性消失问题
- Scrollview 嵌套 RecyclerView 及在Android 5.1版本滑动时 惯性消失问题
- 解决在scrollview上下滑动嵌套scrollview,viewpager水平滑动时的抖动问题
- 关于viewpager中嵌套的fragment中的listview的横向滑动的滑动冲突的问题。
- Webview上下滑动渐变色问题解决
- Android:关于Viewpager中的Fragment 滑动时保存状态的问题