ios - UITableView 里面的 UITableView?

标签 ios uitableview swift subview typeahead

通常:

可以添加一个 UITableView 作为另一个 UITableView 的 subview 吗?或者,我应该创建一个 UIView 并将每个 UITableView 添加到它吗?

具体来说:

对于具有预输入功能的 ComposeTableViewController,例如在 iPhone 的 native 邮件应用程序中,您会推荐哪种方法,为什么?

注意:我更喜欢 100% 以编程方式构建事物(没有 Interface Builder)。

  1. 子类 UITableViewController

    然后,为了显示预先输入的结果,创建并添加一个 resultsTableView 作为 self.tableView 的 subview ,直接位于单元格(self. tableView) 和预输入文本字段。

    这种方法的好处是 resultsTableView 会自动与 self.tableView 一起滚动。

    但是,可以添加一个 UITableView 作为另一个 UITableView 的 subview 吗?

  2. 子类 UIViewController

    创建并添加 tableView(自定义属性)作为 self.view 的 subview 。

    创建并添加 resultsTableView 作为 self.view 的 subview 。

    这种方法的烦人之处在于我必须在 self.tableView 滚动时手动重新定位 resultsTableView

我想我更喜欢方法 1,但是添加一个 UITableView 作为另一个 UITableView 的 subview 对我来说似乎很臭。

最佳答案

TableView 不能有 subview 。您可以尝试添加一个 tableview 作为 TableViewCell 的 View ,但是您必须问自己它将如何滚动,如果您尝试在子 tableview 中滚动,它会滚动子 tableview 还是父 tableview?在一个 View 中呈现多个 TableView 要容易得多。这可以通过将自定义 View Controller 设置为其 View 中包含的两个 TableView 的数据源,然后将作为数据源方法的参数发送的 TableView 指针与作为自定义 View Controller 的 Ivars 的两个 TableView 指针进行比较来轻松完成。

关于ios - UITableView 里面的 UITableView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26724407/

相关文章:

ios - 如何使用 Swift 从 Xcode 中的代码访问预处理器宏?

iOS - Xcode 中的 iPad 预览缺失

ios - 如何在 Swift 中更改 UINavigationBar 中的编辑/完成按钮标题

iOS 将 viewDidAppear 路由到 subview Controller ?

iOS:具有隐藏 View 的布局约束

swift - 使用 NSFetchRequest 从 CoreData 填充 TableView

ios - 根据时间戳计算动画中风开始?

ios - SwiftUI-无法搜索和切换列表

ios - UITableViewController 模糊背景不显示滚动

ios - 包含 3 个组的合适 View