資料介面卡BaseAdapter

2021-07-03 22:16:19 字數 1054 閱讀 1281

什麼是資料介面卡:通過資料介面卡,我們可以將資料來源和ui控制項聯絡起來。

資料介面卡adapter的作用就是將多種多樣的資料來源適配成listview可以讀取的模式

1.降低程式的耦合性

2.容易擴充套件

最常用的資料介面卡:baseadapter

listview的顯示和快取機制

總結來講:

需要才顯示,顯示完就被**到緩衝池中。

1. 螢幕上滑時,先將item1**到view緩衝池中

2. 新要顯示的item8從view緩衝池中取出,並重新設定好item8所要顯示的資料

3. item8顯示出來

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

沒有利用baseadapter的快取機制

通過判斷baseadapter中的getview()方法的引數convertview,我們可以利用listview給我們提供的緩衝機制。但是還是有瓶頸,就是findviewbyid()方法。

使用viewholder類來優化baseadapter中的getview()方法:

1. 在baseadapter的繼承類中先建立乙個viewholder類,裡面的成員變數對應我們listview中乙個view的所有控制項;

2. 判斷getview()方法的乙個引數convertview是否為空;

3. 通過view的settag()方法將viewholder和convertview繫結;

4. 通過view的gettag()方法從convertview中取出與之關聯的viewholder物件

5. 通過viewholder物件找到對應控制項

viewholder的作用是將listview中每個view中的每個控制項都關聯上了getview()中提供的convertview,從而也為這些控制項提供了listview的緩衝機制,進而避免了用大量的findviewbyid()建立這些小的控制項,因為既然listview中的每個view可以通過緩衝重複利用,那麼這些view中的控制項也就可以了,viewholder就是起到了這個承接著的作用。

Android介面卡BaseAdapter詳解

次元立方 程式設計資料庫 安全設計 網頁系統 伺服器組網 嵌入式基礎 name loginwin id loginwin src allowtransparency true height 30 frameborder 0 scrolling no width 100 marginwidth 0 m...

介面卡模式 預設介面卡,類介面卡,物件介面卡

模式思想 改變乙個類的對外介面 增加或減少 以滿足不同外部呼叫者的需求 角色成員 目標介面 target 客戶所期待的介面。目標可以是具體的或抽象的類,也可以是介面。需要適配的類 adaptee 需要適配的類或適配者類。介面卡 adapter 通過包裝乙個需要適配的物件,把原介面轉換成目標介面。適配...

介面卡模式(類介面卡 物件介面卡)

做個筆記 引用 public inte ce usb public inte ce psp public class usber implements usb 類介面卡 psp適用usb介面 public class usbadapter extends usber implements psp 物...