就是下图这种列表,前两个分组为单层的,其他身份的为双层的,想了好久没想通,只能来请教各位了...
走同样的路,发现不同的人生
github上很多expandableListView的庫可以找找有沒有合適的,不過單純用recyclerView也能實現,adapter裡面分3種trpe,標題(熱門省份等),次標題(山東省等),具體省份。
點選擴充清單可以直接插入資料然後用adapter.notifyItemIntert()來刷新清單
推薦兩個庫https://github.com/zaihuishou...https://github.com/bignerdran...感覺單層的點擊效果可以單獨處理,直接下載地圖,雙層的展開,二級選單下載地圖
我以前簡單寫過。自己定義一個簡單的樹狀結構,裡面記錄了子節點、本節點的層數、是否要展示本節點的子節點和本節點是否為葉節點,根據這些來判斷itemType(例如葉節點的話點擊是下載地圖,非葉節點的話是展開下一級列表),不過每次點擊都要觸發一次notifyDataSetChanged(),我感覺不大好。
Android 打造任意層級樹形控制項 考驗你的資料結構與設計 hongyang大神曾經寫過一篇類似的文章,不過他是用的線性表存的
想了一下還是很多坑,默默坐等大神
推薦的開源recyclerview https://github.com/bignerdran...定義樹形結構├─ItemStructure│ ├─ItemParent│ │ ├─Childrens🜔1 ✔ₔ ✔ₔ ├─ ItemChildren2│ │ │ ├─ItemChildren3│ │ │ ├─.............ItemStructure作為Item的整個結構,ItemParent作為Item可下拉的部分,ChiChildrens作為最子層可下載的內容。透過ViewType分類HeaderView、ItemParent、ItemChildrens列表
github上很多expandableListView的庫可以找找有沒有合適的,不過單純用recyclerView也能實現,adapter裡面分3種trpe,標題(熱門省份等),次標題(山東省等),具體省份。
點選擴充清單可以直接插入資料然後用adapter.notifyItemIntert()來刷新清單
推薦兩個庫
https://github.com/zaihuishou...
https://github.com/bignerdran...
感覺單層的點擊效果可以單獨處理,直接下載地圖,雙層的展開,二級選單下載地圖
我以前簡單寫過。自己定義一個簡單的樹狀結構,裡面記錄了子節點、本節點的層數、是否要展示本節點的子節點和本節點是否為葉節點,根據這些來判斷itemType(例如葉節點的話點擊是下載地圖,非葉節點的話是展開下一級列表),不過每次點擊都要觸發一次notifyDataSetChanged(),我感覺不大好。
Android 打造任意層級樹形控制項 考驗你的資料結構與設計 hongyang大神曾經寫過一篇類似的文章,不過他是用的線性表存的
想了一下還是很多坑,默默坐等大神
推薦的開源recyclerview https://github.com/bignerdran...
定義樹形結構
├─ItemStructure
│ ├─ItemParent
│ │ ├─Childrens🜔1 ✔ₔ ✔ₔ ├─ ItemChildren2
│ │ │ ├─ItemChildren3
│ │ │ ├─.............
ItemStructure作為Item的整個結構,ItemParent作為Item可下拉的部分,ChiChildrens作為最子層可下載的內容。透過ViewType分類HeaderView、ItemParent、ItemChildrens列表