Inconsistency detected. Invalid item position 13(offset:13).state:50
at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5197)
at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5153)
at me.meecha.ui.components.SelectPageLayout$MyGridLayoutManager.onMeasure
at android.support.v7.widget.RecyclerView.onMeasure(RecyclerView.java:2890)
at android.view.View.measure(View.java:17573)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5561)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:722)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:613)
at android.view.View.measure(View.java:17573)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5561)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:722)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:613)
at android.view.View.measure(View.java:17573)
at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:728)
at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:464)
at android.view.View.measure(View.java:17573)
at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:728)
at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:464)
at android.view.View.measure(View.java:17573)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5561)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:722)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:613)
at android.view.View.measure(View.java:17573)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5561)
at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5197)
at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5153)
at me.meecha.ui.components.SelectPageLayout$MyGridLayoutManager.onMeasure
at android.support.v7.widget.RecyclerView.onMeasure(RecyclerView.java:2890)
at android.view.View.measure(View.java:17573)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5561)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:722)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:613)
at android.view.View.measure(View.java:17573)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5561)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:722)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:613)
at android.view.View.measure(View.java:17573)
at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:728)
at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:464)
at android.view.View.measure(View.java:17573)
at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:728)
at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:464)
at android.view.View.measure(View.java:17573)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5561)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:722)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:613)
at android.view.View.measure(View.java:17573)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5561)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:436)
在View view = recycler.getViewForPosition(i);获取view的时候报的异常。主要原因数据不一致,state.getItemCount();中获取的值和adapter.getItemCount();获取的值不一致造成的。
处理方法在执行该方法前判断一致性:state.getItemCount() == adapter.getItemCount();