天天看點

《Android 平闆電腦開發實戰詳解和典型案例》——2.6節可展開清單—— ExpandableListView

本節書摘來自異步社群《android 平闆電腦開發實戰詳解和典型案例》一書中的第2章,第2.6節可展開清單—— expandablelistview,作者 吳亞峰 , 杜化美 , 索依娜,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視

2.6 可展開清單—— expandablelistview

android 平闆電腦開發實戰詳解和典型案例

上一節中介紹了numberpicker的基本知識及簡單案例,本節将介紹android 2.0控件可擴充清單expandablelistview,主要内容包括其基本知識以及一個簡單的案例。

2.6.1 可展開清單基本知識

可展開清單expandablelistview在主界面顯示的效果就是下拉菜單。當單擊可展開清單expandablelistview時會彈出一個子菜單,當再單擊時界面就會恢複,使主界面節省很大的空間。可擴充清單expandablelistview繼承自listview,其繼承樹如圖2-28所示。

《Android 平闆電腦開發實戰詳解和典型案例》——2.6節可展開清單—— ExpandableListView

對菜單資源中的其他屬性,由于篇幅所限,筆者将不再一一贅述,請讀者自行查閱相關的api。

2.6.2 可展開清單使用案例

通過前面的基本知識,讀者對可擴充清單的基本知識已經有了簡單的了解,下面通過案例sample2_8使讀者進一步掌握可擴充清單的使用,在正式介紹此案例的開發步驟之前首先請讀者了解一下本案例的運作效果,如圖2-29、圖2-30和圖2-31所示。

《Android 平闆電腦開發實戰詳解和典型案例》——2.6節可展開清單—— ExpandableListView

圖2-29為程式運作效果圖,單擊菜單會出現圖2-30、圖2-31的效果。

了解了案例的運作結果之後,下面開始介紹案例的開發,具體步驟如下。

(1)首先需要編寫的是主配置檔案main.xml,其代碼如下。

該布局比較簡單,在一個充滿螢幕的linearlayout中放了一個放置可展開清單expandablelistview,單擊可展開清單中的選項後可顯示子清單。

(2)完成了配置檔案main.xml的開發後,下面将要開發的是主activity對應的類expandlactivity,其代碼如下。

第11~16行為當孩子被單擊時調用,顯示一個toast。第17~20行為當組被單擊時調用,顯示一個toast。第21~24行為上下文菜單建立時調用。

第25~39行為單擊上下文菜單後的邏輯,第27~30行為擷取給定菜單項的資訊和給定位置的類型。第31~39行為按類型的不同顯示不同的toast。

第40~76行為自定義一個adapter,其中第41~43行為父清單和子清單設定資料。第44~76行為擷取view的邏輯。

繼續閱讀