1. 程式人生 > >解決IndexOutOfBoundsException: Inconsistency detected. Invalid view holder adapter

解決IndexOutOfBoundsException: Inconsistency detected. Invalid view holder adapter

RecyclerView重新整理資料的時候可能會出現這個報錯,我就是被它困擾了一天,好在萬能的google幫我找到了解決方案。
其實這不是我的問題,是官方的BUG,BUG,BUG。

package com.my.asus.myrecyclerview.helper;

import android.content.Context;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.util.AttributeSet;
import
android.util.Log; /** * Created by Asus on 2016/5/17. */ public class WrapContentLinearLayoutManager extends LinearLayoutManager { public WrapContentLinearLayoutManager(Context context) { super(context); } public WrapContentLinearLayoutManager(Context context, int orientation, boolean
reverseLayout) { super(context, orientation, reverseLayout); } public WrapContentLinearLayoutManager(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) { super(context, attrs, defStyleAttr, defStyleRes); } @Override public void onLayoutChildren
(RecyclerView.Recycler recycler, RecyclerView.State state) { try { super.onLayoutChildren(recycler, state); } catch (IndexOutOfBoundsException e) { Log.e("problem", "meet a IOOBE in RecyclerView"); } } }

設定setLayoutManager的時候這樣寫:

LinearLayoutManager linearLayoutManager=new WrapContentLinearLayoutManager(this, LinearLayoutManager.VERTICAL, false);
recyclerView.setLayoutManager(linearLayoutManager);

就不會報錯啦。

相關推薦

解決IndexOutOfBoundsException: Inconsistency detected. Invalid view holder adapter

RecyclerView重新整理資料的時候可能會出現這個報錯,我就是被它困擾了一天,好在萬能的google幫我找到了解決方案。 其實這不是我的問題,是官方的BUG,BUG,BUG。 package com.my.asus.myrecyclerview.hel

轉摘:解決IndexOutOfBoundsException: Inconsistency detected. Invalid view holder adapter

RecyclerView重新整理資料的時候可能會出現這個報錯,我就是被它困擾了一天,好在萬能的google幫我找到了解決方案。 其實這不是我的問題,是官方的BUG,BUG,BUG。package com.my.asus.myrecyclerview.helper; impor

RecyclerView Bug:IndexOutOfBoundsException: Inconsistency detected. Invalid view holder adapter解決方案

看了別的文章,懂了一個道理,list的資料,要和adpater資料同步,例如,list.clear(),執行後,要立即呼叫notifyDataSetChanged(),而不是等到網路請求完後,在呼叫n

Android之RecyclerView的原生Bug-Inconsistency detected. Invalid view holder adapter positionViewHolder{a1

Android之RecyclerView的原生Bug-Inconsistency detected. Invalid view holder adapter positionViewHolder{a1bbfa3 position=2 id=-1, oldPos=-1, pLpos:-1 no p

關於RecyclerView的報錯 Inconsistency detected. Invalid view holder adapter positionViewHolder

也就是說在移除list中的資料後,並沒有緊接著告知adapter有資料已經移除,就會導致後面操作的報錯。 解決方法是,在list做完remove或者add操作後,緊跟著notifyItemInserted(notifyItemRangeInserted)或notifyDataSetChanged 如何

RecyclerView 的IndexOutOfBoundsException: Inconsistency detected異常解決辦法

在使用RecyclerView 的時候用到側滑刪除,出現了下面的異常: 經查閱資料,發現在介面卡中使用notifyItemRemoved,notifyItemChanged 方法導致的,這裡主要在

Android 解決java.lang.IndexOutOfBoundsException: Inconsistency detected錯誤

  今天測試突然找我說專案在重新整理資料時偶現crash情況,經過反覆測試終於重現出此錯誤日誌,如圖所示,看到此錯誤資訊我當時也是一臉懵逼,沒有報具體哪段程式碼的錯誤資訊,而是報RecyclerVi

RecycleView Bug:java.lang.IndexOutOfBoundsException: Inconsistency detected.

not ext title size data app position line override 今天使用RecyclerView時,上下兩個RecyclerView,在實現下拉刷新時,報錯: java.lang.IndexOutOfBoundsException:

解決sqoop報錯Invalid number; item = ITEM_UNICODE

lur cloudera ble not null edm ive pan ext 使用報錯 報錯棧: java.sql.SQLException: Invalid number; item = ITEM_UNICODE at com.intersys.jd

【微信小程序】解決 豎向<scroll-view>組件 “豎向滾動頁面出現遮擋”問題

ane -c system cti cnblogs con ons 原因 strong 問題圖: 問題原因: <scroll-view class="scroll-container" upper-threshold="{{sortPanelDist}}" s

解決問題 xcrun: error: invalid active developer path

git comm 方法 run jin line cti dev div 文章轉載自 碼經筆記 [https://majing.io] https://majing.io/posts/10000002011165 升級到macOS High Sierra後,執行git

解決Oracle建立檢視(VIEW)許可權不足的方法

 在建立使用者的時候如果直接給使用者DBA許可權, 那麼在B使用者中可以直接查詢A使用者的表, 但是在建立檢視時中查詢A使用者的表就會報無許可權, 在這種情況下需要再在被訪問的A使用者裡面去給予要訪問該表的B使用者授權。 --建立檢視許可權grant crea

解決自定義控制元件View在MainActivity中findviewbyid為空的問題

同事在自定義轉盤的程式碼里加了一個介面回撥,一直崩潰,一直以為是介面的問題 ,後來才發現是view中建構函式的問題 public Lucky(Context context) { this(context,null); } public Lucky(

解決小程式中 cover-view無法蓋住canvas的問題,僅安卓真機出現

原因在於系統頁面渲染的差異,在安卓中頁面dom的渲染並不是完成按照上下順序來的, 有可能出現寫在後面的dom被先渲染出來,因此會隨機出現能蓋住、不能蓋住的情況,很詭異是不是? 開發者工具中並非真機,只是模擬顯示,調整時顯示正常不代表真機中正常   解決方式很簡單: 將cover-view的

Kotlin通過Id操作ViewAdapter和動態載入Xml檔案也可以類似操作

如果使用kotlin,什麼butterknife繫結,Xutil註解都不需要,只需要通過id就可以操作view,非常方便,但是在使用的過程中還是遇到兩個值得記錄的問題如下: 針對adapter中通過id來操作 針對動態載入佈局通過id來操作 其實兩者本質

解決ListView的The content of the adapter has changed but ListView did not receive a notification崩潰問題

最近在寫一個聚合工具箱的時候,添加了滑動返回功能,使用ListView時(不要問我為啥不用recycleview,小工具嘛,主要是邏輯,頁面都是次要的),遇到如下崩潰問題 java.lang.IllegalStateException: The content of t

如何解決 App 釋出的 Invalid Code Signing Entitlements 問題

近向 App store 提交了一個應用,應用的狀態顯示: Invalid Binary, 同時收到一封來自 apple 的郵件,大致內容是說,簽名有誤。 因為之前釋出都沒有遇到這種情況,看到這封郵件,一時茫然。 內容如下: Invalid Code Signing E

Window 解決開機報錯:Invalid Partition Table

導語 Invalid Partition Table,即無效磁碟分割槽,硬碟不能啟動。 一般我們都會使用多硬碟的Windows電腦,如固態硬碟+機械硬碟結合的雙硬碟搭配。出現這個報錯原因就是開機時預設啟動載入機械硬碟了,可以簡單理解為沒有正確識別系統主分割槽導致的。然而W

android接入微信登入授權提示{"errcode":40125,"errmsg":"invalid appsecret, view more at 。。。解決辦法

android接入微信登入授權提示: {“errcode”:40125,”errmsg”:”invalid appsecret, view more at http:\/\/t.cn\/RAEkdVq, hints: [ req_id: iDticA0667th44 ]”} 1

android接入微信登入授權提示{"errcode":40125,"errmsg":"invalid appsecret, view more at 。。。解決辦法

android接入微信登入授權提示: {“errcode”:40125,”errmsg”:”invalid appsecret, view more at http:\/\/t.cn\/RAEkdVq,