美文网首页
UITableView 多层级(树形)展开

UITableView 多层级(树形)展开

作者: 酒红色T恤 | 来源:发表于2017-08-16 20:02 被阅读102次

    先看一下效果图!

    TableView 多层级展示.gif

    最近项目中遇到多层级Cell 展开的功能,于是就把这些总结了一下,代码详见Demo,这里写了两种TableView:
    TableView1: 适合两级的情况,用的是模型驱动UI,即通过修改模型中的isExpand(代表 展开 \ 收起)属性来达到Cell 展开 \ 收起 效果。
    优点:比较容易实现,逻辑简单。
    缺点:不适合多级菜单。
    TableView2: 适合多级菜单展开 \ 收起,比如:书籍目录或地区选择等,使用的也是模型驱动UI。
    需要注意的是: 其中用到递归解析模型。
    如下图(一):模型字段)
    图(二):detailArray 中是下一层数据的集合

    图(一).png 图(二).png

    实现过程我遇到了两个问题(大牛请自动跳过):
    一、如何递归解析模型

    • 这里借助了MJExtension
    • 这样处理就行了,如图
    MutiTree.h.png MutiTree.m.png

    二、如何给模型中加入level字段:

    • 这里主要说一下这个level 的用处: level 表示模型所在的层级,在UI上的用处就是用来计算缩进距离,见图(三)。


      图(三)
    UITableViewCell的两个属性,说实话以前从来没怎么注意过.png

    项目会收集一些非常实用的问题,且都是我自己亲自实践后再会上传,如果大家在用的过程中有什么问题或建议,请在下方评论区提出!
    接下来会上传腾讯新闻页的模块,敬请关注!

    相关文章

      网友评论

          本文标题:UITableView 多层级(树形)展开

          本文链接:https://www.haomeiwen.com/subject/bslwrxtx.html