【发布时间】:2018-01-05 23:09:16
【问题描述】:
我有一个带有 UITableView 的模式。如果触摸屏幕上的任何位置(表格视图内的 UITableViewCells 除外),我想关闭模式。但是,您不能为 UITableView 单元格创建一个插座以在代码中引用它。目前我有这个代码:
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
let touch: UITouch? = touches.first
if touch?.view != WHAT TO PUT HERE? {
dismiss(animated: true, completion: nil)
}
}
我不确定如何引用 UITableViewCells。我该怎么做?
【问题讨论】:
-
通常我会在表格视图后面的视图上放置一个手势识别器。单元格将捕获其中发生的任何触摸,并且在手势识别器中,您可以以某种方式关闭模式。
-
我在 tableview 的超级视图中添加了一个手势识别器,但单元格没有捕获触摸。是否有我应该添加手势识别器的特定视图?
-
在 UITableView 后面添加一个大按钮。并在按钮单击时关闭模式
-
我的表格视图占据了整个屏幕,即使单元格没有,所以表格视图后面的元素永远不会被触及。
标签: ios swift uitableview