如何在本机反应中移动到其他选项卡时暂停视频

Posted

技术标签:

【中文标题】如何在本机反应中移动到其他选项卡时暂停视频【英文标题】:How to pause video when moving to other tab in react native 【发布时间】:2018-07-31 13:57:45 【问题描述】:

我已经在标签中实现了反应原生视频(标签是使用原生基础实现的),但是在移动到其他标签(ontabpress)时,视频仍然在后台播放。任何帮助都会得到帮助。谢谢

【问题讨论】:

您是否尝试过在tabpress 上暂停视频? github.com/react-native-community/react-native-video#paused 【参考方案1】:
import useNavigation from '@react-navigation/native';

const [pause, setPause] = useState(false);
const navigation = useNavigation();

useEffect(() => 
    navigation.addListener('focus', (route) =>  setPause(false) );
    navigation.addListener('blur', (route) =>  setPause(true) );
, []);

<Video
      source= uri: item.uri 
      rate=1.0
      volume=1.0
      paused=pause
      resizeMode="cover"
      shouldPlay=play
      isLooping
      style=
        width: '100%',
        height: '100%',
      
    />

希望这对您有帮助。 :)

【讨论】:

【参考方案2】:

试试这个

 ...

   const [pause, setPause] = useState(false)

   useEffect(() => 
     const blur = navigation.addListener('blur', () => 
     setPause(true)
     );

     const focus = navigation.addListener('focus', () => 
     setPause(false)
     );

     return blur, focus;
   , [navigation]);

 ...
 
   <Video
     source= uri: ENTER_HERE_URL 
     paused=pause
     style=styles.bgView />

 ...

【讨论】:

以上是关于如何在本机反应中移动到其他选项卡时暂停视频的主要内容,如果未能解决你的问题,请参考以下文章

使用 JQuery 播放/暂停 HTML 5 视频

如何防止在android中打开键盘时反应本机模式向上移动?

手风琴选项卡更改暂停视频

如何在本机反应中设置不可移动的地图标记

如何在本机反应中隐藏特定屏幕上的底部导航栏?

如何在本机反应中从相机按钮切换到视频录制按钮