将触摸事件传递给 UICollectionViewCell 内容?

Posted

技术标签:

【中文标题】将触摸事件传递给 UICollectionViewCell 内容?【英文标题】:Pass touch events to a UICollectionViewCell contents? 【发布时间】:2013-12-16 16:55:08 【问题描述】:

我有一个 UICollectionView,它显示可以包含多种类型内容的单元格。内容可以是视图、滚动视图、按钮等。在大多数情况下,表格显示正确,但触摸事件似乎没有传递到单元格内容。 (按钮不接受点击,滚动视图不滚动)。

有没有办法将触摸事件传递给每个单元格上的内容?

【问题讨论】:

【参考方案1】:

您是从 nib 加载 UICollectionViewCell 吗? nib 中的元素不会添加到 UICollectionViewCell 的 contentView 中,因此事件不会传递到单元格内容。

我在从 nib 加载的单元格(包括 UITableView)中遇到了同样的问题,我可以通过手动将表格添加到 contentView 来修复它,如下所示:

[self.contentView addSubview:_tableView];

我找到了修复here。

【讨论】:

以上是关于将触摸事件传递给 UICollectionViewCell 内容?的主要内容,如果未能解决你的问题,请参考以下文章

如何将触摸事件传递给 parentViewController?

将触摸事件传递给多个选项之一

我在监视触摸事件的 UITableViewCell 中有一个 UILabel,如何将一些事件传递给单元格,将其他事件传递给标签?

将触摸事件传递给父视图

将触摸事件传递给 iOS 状态栏

仅当触摸类型为手指时,如何将触摸事件传递给其他视图?