android - React Native Video 不显示播放器

标签 android ios react-native cross-platform react-native-video

当使用暂停的属性以及将其放入另一个 View 时,我遇到了视频播放器的问题。 当我尝试将视频放在两个 View 之间(以测试滚动)时,第一个 View 被播放器隐藏,但第二个 View 仍然有效。滚动也能正常工作。 虽然,当我删除第一个 View 时,播放器就会消失,但第二个 View 仍保留在那里。当我设置暂停= true时,也会发生同样的问题,播放器就不会出现。我在这里遇到的另一个问题是当我尝试使用维度时,播放器没有出现。 这里是代码(不使用维度):

import Video from 'react-native-video';

import {
    Text,
    StyleSheet,
    View,
    Dimensions,
    ScrollView
} from 'react-native';

import api from '../services/api';
import JojoVideo from '../assets/jojo_op_1.mp4';
import Icon from 'react-native-vector-icons/FontAwesome';

export default function Videos({ navigation }) {
    /* state = {
         paused: true
     };


     position = {
         start: null,
         end: null
     };

    const [state, setState] = useState({ paused: true });
    const [postion, setPosition] = useState({ start: null, end: null });
    // const {width} = Dimensions.get('window');

    return (
        <View style={styles.container}>
            <ScrollView style={styles.scrollView}>
                {/* <View style={styles.fakeContent}></View> */}
                <Video
                    source={JojoVideo}
                    ref={(ref) => {
                        player = ref
                    }}
                    style={styles.video}
                    paused={state.paused}
                />
                <View style={styles.fakeContent}></View>
            </ScrollView>
        </View>
    );

}

样式表:

const styles = StyleSheet.create({
    container: {
        flex: 1,
        backgroundColor: '#5EFFB1',
        justifyContent: 'center',
        alignItems: 'center',
        padding: 30
    },
    scrollView: {
        position: 'absolute',
        top: 0,
        left: 0,
        right: 0,
        bottom: 0,
        flex: 1
    },
    video: {
        position: 'absolute',
        top: 0,
        left: 0,
        bottom: 0,
        right: 0
    },
    fakeContent: {
        height: 850,
        backgroundColor: "#CCC",
        paddingTop: 250,
        alignItems: "center"
    },
});

当我尝试测试维度时,标签将如下所示:

               <Video
                   source={JojoVideo}
                   ref={(ref) => {
                       player = ref
                   }}
                   style={styles.video, width}
                   paused={state.paused}
               /> 

最佳答案

好吧,我解决了这个谜团,我只需要把视频标签放在 View 中,并在 View 和视频中放置相同的高度......现在它可以正常工作了!

关于android - React Native Video 不显示播放器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58151197/

相关文章:

java - 使用同一资源文件更改所有布局的 TextView 值

ios - Xcode - 免费清除设备文件夹?

android - 使用健身房后,Crashlytics 在 Android 上失败。 (得到 "Crashlytics has moved the submit binary outside of Crashlytics.framework directory..."错误)

react-native - 如何在 vscode 上为 react-native 启用流量检查?

android - 第一次运行 'react-native run-android' 时,出现此错误 :

android - 为什么发送短信时会出现 "Generic Failure"错误?

android - 如何访问 Android 应用程序的 classes.dex?

android - 从Android应用的角度来看,根路径在哪里?

ios - 如何在 View 之间创建一个带有密码的窗口?

javascript - React-Native:使用 panResponder.panHandlers (nativeElement) 获取可拖动对象的 X 和 Y 坐标