ios - 两级详细 View 的 TableView 中 TableView 的替代方法

标签 ios cocoa-touch uitableview user-interface

想象一个允许甲壳虫乐队同时处理多张专辑的应用程序。所以在左边你有一个包含两张专辑(Abbey Road 和 Sergent Pepper's)的列表,如果你选择 Abbey Road,它会为你提供 Abbey Road 上所有歌曲的列表。如果您选择其中一首歌曲(下例中的“Come Together”),它会在详细 View 中打开该歌曲的文本,并允许您编辑歌词。因此,它不是一个主从设置,而是一个主从安排,具有两个 TableView 和一个详细 View 。持久化将通过 Core Data 完成。

这是推荐的方法吗?我在网上看到一些评论说嵌套表格 View 不是很好的 UI。

TableView                 TableView                                 Detail

    Albums (list)              **AbbeyRoad**   (songlist)            Come Together (songtext)

    1.AbbeyRoad            ComeTogether                       Here come old flattop blah blah
    2.Sergent Pepper's     Something 
                           Maxwell's Silver Hammer

最佳答案

永远、永远、永远不要将一个 TableView 放在另一个 TableView 中。嘎嘎。这是正在形成的用户界面灾难。

您可以使用分区 TableView ,其中分区是专辑,分区中的行是歌曲。

对于 iPad,您可以使用并排表格 View ,但这在 iPhone 上不起作用。

Apple 希望您在 iPad 上使用 Split View Controller ,在 iPhone 上使用一系列 master>detail>sub_detail View Controller 。您可以根据需要下降任意多个级别。

关于ios - 两级详细 View 的 TableView 中 TableView 的替代方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23584951/

相关文章:

objective-c - 如何让 touchesMoved 只控制一个 View ?

ios - 如果操作系统不支持底层功能,是否足以禁用工具栏按钮

objective-c - 如何使用 AFNetworking 立即强制取消 NSOperation?

ios - NSRegularExpression 如何给我一个 NSRange 越界?

ios - 如果我们在 Swift 中触摸 UITextView 之外的其他区域,如何关闭键盘

iphone - 如何在iOS中在PDF中绘制多种彩色文本?

ios - Storyboard xcode 9.2 示例中需要恢复 id

ios - UITableView cellForRowAt 中的 API 异步调用

iphone - 获取 UITableViewCell 的 subview (UITextField 或 UILabel)——两种方式,一种有效,一种无效——为什么?

ios - 当我向下 ScrollView 并向上返回时,切换开关不保存状态