欢迎光临
我们一直在努力

较为美观的多级展开列表

建站超值云服务器,限时71元/月

较为美观的多级展开列表

项目介绍:

          先看界面

较为美观的多级展开.gif

一级列表主要用的自定义的UITableViewHeaderFooterView,二级列表和三级列表则采用自定义的cell。该控件可以扩展第四级,第五级等,但需要修改代码以及数据源,这个可以自己参考代码修改。
界面代码较为简单,这里就不展示了,展示主要的代码。
记录展开的核心代码    func expandNodes(section : Int, parentID:String,index:Int)->Int{                var insertindex = index                for i in 0..<companys[section].subNodes.count {            let node = companys[section].subNodes            //找到父节点是parentID的子节点            if node.parentID == parentID {                if !self.preservation {  //是否保留所有子cell的展开状态                    node.expand = false                }                //展开节点的后面+1的位置                insertindex += 1                //根据展开顺序排列                tempNodes[section].insert(node, at: insertindex)                //存储插入的位置                reloadArray.append(IndexPath(row: insertindex, section: section))                //遍历子节点的子节点进行展开                if node.expand {                    insertindex = expandNodes(section : section, parentID: node.ownID, index: insertindex)                }            }        }        return insertindex    }记录收起的数据func foldNodes(section : Int,level:Int,currentIndex:Int){        if currentIndex+1<tempNodes[section].count {                        let tempArr = NSArray(array: tempNodes[section])                        let startI = currentIndex+1            var endI   = currentIndex            for i in (currentIndex+1)..<(tempArr.count) {                let node = tempArr as! MLNodelObj                if node.level <= level {                    break                }else{                    endI += 1                    reloadArray.append(IndexPath(row: i, section: section))                }            }            if endI >= startI {                tempNodes[section].removeSubrange(startI…endI)            }        }    }github地址:https://github.com/ljmkimqx/LJMMultiLevelTableView

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 较为美观的多级展开列表
分享到: 更多 (0)