【问题标题】:How to disable only long press on youtube video in react-native-youtube-iframe如何在 react-native-youtube-iframe 中仅禁用长按 youtube 视频
【发布时间】:2021-06-09 16:10:19
【问题描述】:

我使用 react-native-youtube-iframe 在我的 react native 应用中播放 youtube 视频。我想禁用长按 youtube 视频。

【问题讨论】:

  • 面临同样的问题。有人知道怎么做吗?
  • @MaheshGawhane,onContextMenu={(e) => e.preventDefault()} 工作了吗?

标签: react-native


【解决方案1】:

来自 GitHub 文档,我通过使用解决了。

删除长按上下文菜单:

YoutubePlayer 包装在具有 pointerEvents="none" 的视图中,以禁用播放器的应用触摸事件。

然后 react-native 的 Pressable API 或任何可触摸来拦截按下。

    <Pressable
      onPress={() => {
        // handle or ignore
      }}
      onLongPress={() => {
        // handle or ignore
      }}>
    
      <View pointerEvents="none">
        <YoutubePlayer (...) />
      </View>
    
    </Pressable>

来源:https://lonelycpp.github.io/react-native-youtube-iframe/remove-context-share

另一种方式正在使用onContextMenu={(e) =&gt; e.preventDefault()

<div onContextMenu={(e) => e.preventDefault()}>

    <YoutubePlayer (...) />

</div>

【讨论】:

  • 使用这个我们不能触摸 Youtube 播放器,播放/暂停。如果我们提供播放/暂停按钮,那么全屏模式呢?是否有任何功能或事件可以使用按钮将视频更改为全屏模式?
  • 您能否尝试在整个屏幕上禁用上下文菜单:(请参阅 170 票回答)stackoverflow.com/a/28748222/15932042(这是临时修复,未测试)我看到几个 cmets(包括您的) GitHub,我没有找到确切的解决方案。
  • 这个也不行
  • @MaheshGawhane,onContextMenu={(e) =&gt; e.preventDefault()} 工作了吗?
猜你喜欢
  • 2019-04-26
  • 2012-11-05
  • 2019-12-16
  • 1970-01-01
  • 2013-04-16
  • 2016-11-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多