我正在使用YouTube iOS Player Helper View,播放器本身运行良好。但是,我希望用户能够点击视频并开始播放。我尝试将 UITagGestureRecognizer 添加到 YTPlayerView,但它没有注册我的任何水龙头。
我在我的视图中添加了一个 UIButton 并将其连接到我的 IBAction,它告诉 YTPlayerView 播放并且效果很好。但是,我希望它向用户显示,就好像他们已经点击了视频本身一样。因此,我将 UIButton 的大小调整为与 YTPlayerView 相同的大小,并将 UIButton 放在 YTPlayerView 的顶部。
点击 UIButton 不再起作用....几乎。对 YTPlayerView 左侧、右侧或底部的任何点击都不起作用。YTPlayerView 上方的点击仍然通过。因此,如果我将 UIButton 向上移动 10 像素,我可以点击 10 像素条,然后我的 IBAction 将被调用。如果我将 UIButton 10(或 30)像素移动到左侧、右侧或底部,则没有一个水龙头可以通过我的 IBAction。
在下图中,我的 UIButton 具有透明的绿色背景,因此您可以看到它背后的内容。(我已经用它完全不透明进行了测试,它的行为方式相同,透明度不是问题。)如果我点击红色框内的绿色区域(即 YTPlayerView 上方),那么我的 IBAction 会按预期调用。如果我点击红色框外的绿色区域(即 YTPlayerView 的左侧、右侧或下方),则我从未收到 IBAction。
整个视图包含在 UIScrollView 中。我尝试将 UITapGestureRecognizer 添加到 self.view,当我尝试点击 YTPlayerView 时,该点击被传递给我,就好像它点击 UIScrollView 而不是 YTPlayerView。