當前位置:成語大全網 - 新華字典 - iOS 動態樹形結構 - 實現多級菜單,附帶復選框功能

iOS 動態樹形結構 - 實現多級菜單,附帶復選框功能

關鍵詞: 遞歸 多級菜單 復選

1.顯示多級菜單,默認顯示壹級.

2.可以通過點擊有子級的行展開菜單

3.通過復選框,改變選中狀態。狀態有全選、半選、未選中

4.可以擴展獲取當前所選的條目集合

1.首先根Datasource進行數據處理

2.生成壹個handler:MultilevelDataHandler 將數據處理邏輯在handle處理,將數據處理隔離

3.建立壹個數據模型,需要用壹些屬性記錄層級關系。最後我用了壹個字典來記錄原始的數據信息。

這裏是Demo的數據Json

4.將jsonDictionary轉化成數據模型的時候,把層級關系也壹並賦值。

由於數據層級數量的不確定性,這裏用遞歸的方式把每層的數據結構都放到其父類的subArray當中。

5.建壹個新的數組用來存儲要在tableView上展示的數據模型,按照父類子類,父類子類的順序排列。我這裏默認是把第壹級全部關閉展示的

6.實現菜單展開關閉功能

7.實現復選框功能

根據locationArray裏記錄的每壹層父級的序號,找到當前model的父級

由於層級數量的不確定性,所以多次使用到了遞歸的方式。要註意遞歸的結束條件,必須陷入死循環當中。

/YuTongHon/MultilevelMenuWithCheckbox