1. 程式人生 > >[Android異常]listview(含上拉載入,上拉載入)下拉重新整理報陣列越界異常

[Android異常]listview(含上拉載入,上拉載入)下拉重新整理報陣列越界異常

場景

1.在安卓開發中,使用帶footview或者headView的Listview,且該Listview含固定型別的item;

2.該Listview嵌套了Listview等view

錯誤內容

:FATAL EXCEPTION: main
                                                                     Process: package.xxx.xxx.xxx, PID: 10477
                                                                     java.lang.ArrayIndexOutOfBoundsException: length=3; index=3
                                                                         at android.widget.AbsListView$RecycleBin.scrapActiveViews(AbsListView.java:6744)
                                                                         at android.widget.ListView.layoutChildren(ListView.java:1698)
                                                                         at android.widget.AbsListView.onLayout(AbsListView.java:2169)
                                                                         at android.view.View.layout(View.java:15794)
                                                                         at android.view.ViewGroup.layout(ViewGroup.java:5059)
                                                                         at android.widget.FrameLayout.layoutChildren(FrameLayout.java:579)
                                                                         at android.widget.FrameLayout.onLayout(FrameLayout.java:514)
                                                                         at android.view.View.layout(View.java:15794)
                                                                         at android.view.ViewGroup.layout(ViewGroup.java:5059)
                                                                         at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1734)
                                                                         at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1588)
                                                                         at android.widget.LinearLayout.onLayout(LinearLayout.java:1497)
                                                                         at android.view.View.layout(View.java:15794)


。。。。

解決方案:

1.因為footview也是listview的一個item,所以原有的itemTypecount數量是小於實際的getViewTypeCount()的;所以在listview的快取view的過程中,會發現實際的型別數量會超過快取的型別數量(這個時候就越界了)

最後,我就只改了一個地方,把TYPE_COUNT在原有的基礎上+1,這個1代表了Footview.

@Override
    public int getViewTypeCount() {
        return TYPE_COUNT;
    }



相關推薦

[Android異常]listview(載入載入)重新整理陣列越界異常

場景 1.在安卓開發中,使用帶footview或者headView的Listview,且該Listview含固定型別的item; 2.該Listview嵌套了Listview等view 錯誤內容 :F

IDEA執行spark相關程式陣列越界異常java.lang.ArrayIndexOutOfBoundsException: 10582

筆者執行環境:     Win10 + IDEA + spark2.4 + JDK8 程式執行到 sc.textFile("E:/tmp/test.txt"); 報了陣列越界異常,經檢查是paranamer造成的(網上有同行說JDK8得使用paraname

功能強大的RecyclerView實現 (單/多子項佈局載入載入重新整理左劃刪除)

       先看效果,可以像普通recyclerView那樣只加載一種列表子項,也可以同時載入不同的列表子項,已經寫好了常用必備的功能:正常的適配渲染,上拉載入,下拉重新整理,左劃刪除。 核心是XRefreshView+MultiTypeAdapter兩者組合使用,搭

Android Camera 自動適配多種螢幕解決預覽照片伸和儲存的圖片

最近公司需要做一個手機自拍照的功能,由於之前有做過類似手機拍照的功能,所以很快就實現了自定義手機拍的功能。但是後面發現部分手機出現預覽照片拉伸和儲存的圖片拉伸的情況。然後百度了一下,發現原理很好理解,也有一堆demo,然而並沒有解決拉伸的情況。下面總結一下我的解決方法,希望對

最全的使用RecyclerView實現重新整理載入更多

前言:            縱觀多數App,下拉重新整理和上拉載入更多是很常見的功能,但是谷歌官方只有一個SwipeRefreshLayout用來下拉重新整理,上拉載入更多還要自己做。      本篇文章基於RecyclerView簡單封裝了這兩個操作,下拉重

2018年Android面試題答案--適合中高階(

2018年Android面試題含答案–適合中高階(上) 轉載 【原連結】新增連結描述 這些面試題是我在今年年初換工作的時候整理,沒有重點。包括java基礎,資料結構,網路,Android相關等等。適合中高階工程師。由於內容過多,將會分為上下兩部分。下部分跳轉連結: https://blog.

關於ueditor編輯器外掛的使用記錄 --- 解決"後端配置項沒有正常載入傳外掛不能正常使用"傳圖片處的問題

Ueditor解壓後的檔案應當直接放在www根目錄下,且檔名更改為ueditor 後開啟遊覽器訪問: http://localhost/ueditor/demo.html (先確保demo.htm

如何通過JS在html網頁進行新增元素包括div 以及框等

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  <html

最最最炫酷動感的重新整理只需要十秒鐘就可以讓你完成。

在我們處理很多很繁冗資料的時候,我們用到了listview去裝載資料,但可顯示的區域有限,這時候我們就需要用到我們的下拉重新整理去載入更多的資料了。這個效果是仿製android5.0的效果在額外多了一個粘性效果動畫,更加的酷了。    下面 我們還是先來看 一下 專案的結

【Linux】Linux網路程式設計(常見伺服器模型篇)

基本資料結構介紹 Linux系統是通過提供巢狀字(socket)來進行網路程式設計的。網路程式通過socket和其他幾個函式的呼叫,會返回一個通用的檔案描述符,使用者可以將這個描述符看成普通的檔案的描述符來操作,這就是Linux的裝置無關性的好處。使用者可以通過向描述符的讀

呼叫百度地圖Android API模擬器地圖可以載入手機無法載入問題

之所以會出現這種問題,基本是因為在申請key時出現的錯誤。下面這張圖是完整版的key,模擬器和手機均可加載出地圖。 一般,我們開發時(即是在模擬器上執行時)是通過開發環境獲取到的SHA1的值,

Android 開發:(十)初識ExpandableListView(可擴充套件的列表元件)

隨便扯點兒 前幾天做iOS仿QQ,其中好友列表頁面就有下拉列表的功能,iOS做法應該比安卓稍微複雜一點,其中佈局以及一些實現方法(協議方法)都類似,不一樣的應該是動畫切換效果,安卓提供現成的元件,用原生的就可以實現。 iOS示例 http://blog.

jQuery動態載入和移除select選項

jQuery動態載入和移除select下拉選項 我是個後端開發,工作需要在做select 聯動效果的時候要動態追加選項,實現追加後,發現修改選項的時候,下級選單會一直追加。 話不多數,直接乾貨 html程式碼示例: <select name="name" id="id" o

記一次後端開發者如何完成前端框三級聯動功能?

前言 下拉框三級聯動這個對於我們大家都很常見,經常在註冊一些資訊的時候,需要選取省市縣等資訊,我需要完成的就是這個功能。 但是無奈這個專案沒有前端開發,而我是一個~專注夾克20年~咦,勁霸男裝?哦~不,是專注後端開發5年~早期學習的jquery,還能記起的常用方法不多了~就知道$("#id")~~~ 但

nodejs express 框架 傳圖片傳頭像問題

上傳圖片總結: 必須 安裝’multer’模組 Npm I multer –S(手動輸入小寫) 第一步 App.js 裡面 掛載index路由之前寫入 app.use(express.static(path.join(__dirname, 'public'))); var mul

懶人載入點選載入更多

//js //點選載入更多 var page = 1; $(".load_more").on('click',function (){ var thisID = $('.layui-this').attr("lay-id");

selenium+chromedrive 爬取js載入的動態網頁(才能顯示內容)

from selenium import webdriver from selenium.webdriver.common.keys import Keys #呼叫鍵盤操作 from selenium.webdriver.chrome.options import Opt

Springmvc檔案傳例子傳帶圖片的Excel並利用poi解析。

直奔主題,第一步:上傳一個帶圖片的Excel。第二步:解析該Excel檔案,得到Excel資料和圖片。 1.pom.xml <!-- 檔案上傳 --> <dependency> <groupId>commons-

[Swift通天遁地]二、表格表單-(4)使用系統自帶的重新整理控制元件製作表格的重新整理效果

本文將演示如何使用系統自帶的下拉重新整理控制元件,製作表格的下拉重新整理效果。 在專案導航區,開啟檢視控制器的程式碼檔案【ViewController.swift】 現在開始編寫程式碼,實現表格的下拉重新整理功能。 1 import UIKit 2 3 //使當前的檢視控制器類,遵循表

百度ueditor後端配置錯誤未找到傳資料傳圖片的完整步驟以及難點問題!

本人因需要編輯功能,自己鑽研加網上找文件,終於弄出了上傳功能。  1  先說原理,不用在後臺建立Action或者controller去接收ueditor上傳的檔案,你只需要設定上傳的路徑,他會自動給你上傳到該目錄下面,非常強大,並且是否帶上Html頭和尾自      需