[英]Expandable ListView in Android
我正在嘗試創建Expanable listview。 其中具有菜單格式-子菜單和子菜單的子菜單,然后是項目。 同樣,少數菜單沒有子菜單。
所有這些都在導航抽屜(側面菜單)上...
我很喜歡這樣的事情:
問題是:
我如何實現這種設計? 展開式Listview是否可以幫助實現這一目標?
還有其他建議嗎?
謝謝!
您需要做的是創建某種樹數據結構並在其中存儲您的項目。
節點將成為您的部分和子部分,同時顯示實際數據。 這將允許您跟蹤每個項目的可見性狀態(基本上是在展開部分還是折疊部分中)
然后創建一個具有2種視圖Category
的適配器: Category
和Item
。 它的getItemViewType
方法應該為每個leaf
返回Item
類型,為每個node
返回Category
。 它的getCount
應該返回所有節+小節+項的總數。 它的getView
應該根據其類型返回一個實際的視圖,但是重要的是檢查它是否包含在擴展(也可見-您需要遞歸檢查)部分中,並相應地將其visibility
設置為VISIBLE
或GONE
。 其onItemClicked
應該在Sections的展開和折疊之間切換其狀態。 Sections對象可能應該具有一種方法,該方法可以告訴您是否展開了該對象,以及該對象是否可見(如果父對象是展開的,或者是頂層的,..)
抱歉,這里沒有代碼,這應該可以幫助您獲得一個主意,我急着寫一些示例(它需要很多代碼)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.