android中的adapter模式

    Adapter是設計模式中的一個概念,它是當一個類需要使用另一個類,而接口不同時,對兩方的不同接口進行適配,其要達到的目的是,在調用方,採用統一的接口進行調用,而不管被調用者是什麼,而被調用方更不會知道自己將會被誰使用,所以無法事先爲調用者定製其接口,因此就沒有意義去考慮調用方採用什麼樣的接口,這些接口的適配工作就由adapter來完成。

    在Android應用中,最常用的就是將各種類型的數據用一個ListView來顯示,ListView是一個顯示列表的控件,它只負責管理列表的行爲,如列表的上下滑動,列表中某個Item的點擊等,而每個Item顯示成什麼樣的視圖(View),這些就不應該由ListView來決定了,他只需要知道每個Item的View是什麼,然後將這些View羅列出來,並管理這些View的滑動效果,點擊響應等。
另一方面,要顯示在ListView中的數據我們通常會以一個Array或類似的數據結構來組織,而不會專們爲ListView控件來保存一堆view類型的數據,最簡單的我們會組織一個字符串數組String[]類型,這個裏面的每一個String就是ListView裏的一個item,但是ListView要顯示一個item,需要的是這個item的View,而不是一個String,如果只將這個String[]交給ListView,ListVie怎麼知道應該把它顯示成什麼樣呢?

     這裏就需要接下來要討論的ListAdapter,這是一個抽象的基類,ArrayAdapter和SimpleAdapter是派生與它的兩個常用的子類,這兩個Adatper的作用就是將一種格式的數據轉換成ListView所需要的View。以ArrayAdapter爲例,它將String[]中每一個String轉換爲一個TextView,該TextView的文本內容就是對應的String,ListView中對會將這些TextView對應的顯示出來。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章