UITableView 中的子菜单

Posted

技术标签:

【中文标题】UITableView 中的子菜单【英文标题】:Submenus in UITableView 【发布时间】:2015-11-03 14:50:06 【问题描述】:

我正在构建一个使用侧边菜单的应用程序,在该侧边菜单中是一个 UITableView 显示一些文本。当您单击其中一个时,它会将您带到另一个 ViewController。我在互联网上搜索了它,但没有找到有用的东西。我的问题是:如何在 tableview 中创建一个“子菜单”,这样当你点击它时,它需要下拉并显示更多选项。

我不知道该怎么做,所以非常感谢您的帮助!

谢谢

【问题讨论】:

一个简单的解决方案是只拥有一个容器视图simple tutorial here 并根据需要让它出现/消失。如果您刚刚开始使用 ios,您将需要使用容器视图(它们现在无处不在),因此这是学习这个简单系统的好机会。 【参考方案1】:

您可以使用部分来构建子菜单结构。您可以覆盖viewForHeaderInSection 为您不想显示部分标题的每个部分,并返回一个大小为(0.0, 0.0) 甚至为null 的空UIView 对象。 (我自己从未尝试过返回 null/nil。)

对于***别的每个菜单,您都有一个对应的部分,每个部分只有一行。他们可能有也可能没有标题视图。

对于要显示为子菜单的菜单,您相应地设置相关部分的标题视图,然后为子菜单的每个项目设置一行。

不幸的是,这仅允许 2 级菜单继承。但从好的方面来说,你需要的一切都已经内置在可可触感中了。

【讨论】:

【参考方案2】:

也许这可能会帮助您实现您正在寻找的东西:

Expandable Sections UITableView IndexPath SWIFT

您可能需要仔细查看代码,但它应该能让您走上正确的轨道。

【讨论】:

找到我找到链接的帖子的链接可能更合适。

以上是关于UITableView 中的子菜单的主要内容,如果未能解决你的问题,请参考以下文章

如何使UITableview中的DPFBannerView不滚动

应用程序退出 *** -[UITableView _configureCellForDisplay:forIndexPath:] 中的断言失败

从 UItableview 删除一行时崩溃

如何在 iPad 的较小区域模拟 navigationController/UITableView DrillDown?

以编程方式填充 UITableView 以创建自定义下拉菜单

tableView - didSelectRowAtIndexPath 未调用