adapter的item重用效能優化

2021-07-23 11:30:41 字數 864 閱讀 9863

listview需要設定adapter,它的item是通過adapter的方法getview(int position, view convertview, viewgroup parent)獲得的。

listview中只有第一屏的item需要新建,它的引用會被存在recyclebin物件內,在拖動時後面的item實際上是重從了之前建立的item。

根據上述,listview在需要顯示item時,最開始第一屏時,getview(int position, view convertview, viewgroup parent )的第二個引數為null,顯示第二屏或者回滾顯示第一屏時,getview(int position, view convertview, viewgroup parent )第二個引數是乙個原來快取的item,我們只需要在getview中把它內部資料更新即可。

如果item結構比較複雜,在更新乙個已有的item內部資料的時候,查詢item內部每乙個元素也需要占用不少資源,所以,可以把這些內部元素的引用快取起來,直接對其賦值,最有效的方法是把這些引用存到對應的item中,比較好的方法是使用settag()方法。

public view getview(int position, view convertview, viewgroup parent) else

data

music m=mobjects.get(position);

view (對號入座)

vholder.titletv.settext(m.gettitle());

vholder.createtv.settext(m.getcreated());

return v;

}class viewholder

python之組合與重用性

組合的概念 軟體重用的重要方式除了繼承之外還有另外一種方式,即 組合 組合指的是,在乙個類中以另外乙個類的物件作為資料屬性,稱為類的組合 class equip 裝備類 def fire self print release fire skill class riven 英雄riven的類,乙個英雄...

尊重使用者,提公升產品成熟性

今天討論乙個話題,就是使用者新增我的城市,城市數限制最多9個城市。方案1 當使用者還想新增城市時,是由程式刪除最近很少用的城市,並同時新增新的城市,然後再通知使用者已經新增完,並刪了某個城市。方案2 當使用者還想新增城市時,先提示通知使用者城市數達最高限制,並為使用者刪除最近很少用的xx,同時新增新...

Android listview的item設定高度

在item的layout檔案中,用android layout height設定item的高度。執行,高度設定無效。解決辦法 給item設定minheight,即可.最近一直糾結於listview中每個item中高度的問題,在網上只找出乙個方法,就是在每個item裡面加入,也就是imageview,...