1.顯示多級菜單,默認顯示壹級。
2.您可以通過單擊帶有子項的行來展開菜單。
3.通過復選框更改選定的狀態。狀態包括全部選中、部分選中和未選中。
4.您可以展開並獲取當前選定的項目集。
1.首先,根數據源執行數據處理。
2.生成處理程序:MultilevelDatahandler在Handle中處理數據處理邏輯,並隔離數據處理。
3.要構建數據模型,需要記錄壹些屬性的層次關系。最後,我用字典記錄了原始數據信息。
這裏是Demo的數據Json。
4.當jsonDictionary被轉換成數據模型時,層次關系也被賦值。
由於數據層數的不確定性,每壹層的數據結構都遞歸地放入其父類的子數組中。
5.構建壹個新數組來存儲要在tableView上顯示的數據模型,按照父類子類和父類子類的順序排列。我在這裏的默認是關閉所有壹級展覽。
6.實現菜單的打開和關閉功能。
7.實現復選框功能
根據locationArray中記錄的每個父模型的序列號,找到當前模型的父模型。
由於級數的不確定性,遞歸方法被多次使用。註意遞歸的結束條件,壹定會陷入無限循環。
/yutonhon/MultilevelMenuWithCheckbox