如何获取 tableView 部分 header
how to get tableView section header
这听起来像是一个奇怪的问题,因为显然在 iOS.
中使用 table 时总是有 viewForHeaderInSection
方法可用
但是,要使用该函数,需要重新加载该函数的数据 table,在这种情况下,我希望避免这种情况。
我的 UITableViewSectionHeader
中有一个按钮,我想在我的应用程序的某个点禁用它 - 再次 - 而不必重新加载 table 查看数据。
我试着用这段代码来做到这一点:
let currentTable = self.playerTables![i] as! UITableView
let header = currentTable.headerViewForSection(0)! as UITableViewHeaderFooterView!
let view = header.contentView as UIView
view.userInteractionEnabled = false
我的应用程序在 运行 这段代码时崩溃,因为在加载 contentView 时 header
为 nil。当我调用 currentTable.headerViewForSection(0)!
代码时它会初始化,但在下一行再次为 nil。
我已经检查了我所指的部分是否正确,检查了 apple 文档和 google/so,但未能找到有关访问 header 部分的任何参考我想要的方式。 有办法吗?
如果 headerview
不在屏幕上(不可见),您将无法触及它。
也许故事板可以帮到你。将 UIView
拖入 tableview
。这将是您的 headerview
,您可以将控件直接连接到 UIViewController
并访问它们。
此外,对于此示例,您不需要使用 viewForHeaderInSection
。
这听起来像是一个奇怪的问题,因为显然在 iOS.
中使用 table 时总是有viewForHeaderInSection
方法可用
但是,要使用该函数,需要重新加载该函数的数据 table,在这种情况下,我希望避免这种情况。
我的 UITableViewSectionHeader
中有一个按钮,我想在我的应用程序的某个点禁用它 - 再次 - 而不必重新加载 table 查看数据。
我试着用这段代码来做到这一点:
let currentTable = self.playerTables![i] as! UITableView
let header = currentTable.headerViewForSection(0)! as UITableViewHeaderFooterView!
let view = header.contentView as UIView
view.userInteractionEnabled = false
我的应用程序在 运行 这段代码时崩溃,因为在加载 contentView 时 header
为 nil。当我调用 currentTable.headerViewForSection(0)!
代码时它会初始化,但在下一行再次为 nil。
我已经检查了我所指的部分是否正确,检查了 apple 文档和 google/so,但未能找到有关访问 header 部分的任何参考我想要的方式。 有办法吗?
如果 headerview
不在屏幕上(不可见),您将无法触及它。
也许故事板可以帮到你。将 UIView
拖入 tableview
。这将是您的 headerview
,您可以将控件直接连接到 UIViewController
并访问它们。
此外,对于此示例,您不需要使用 viewForHeaderInSection
。