我已经为 Android 编写了一个 native UI 组件,它基本上由一个自定义 View (RelativeLayout) 组成,该 View 又包含 JWPlayer .组件和播放器本身都在我的 RN 项目中正确渲染(尺寸、颜色等具有正确的值),但是当我开始播放时,我得到的是没有任何图像的声音。
但是,当我旋转手机时,我也会看到视频图像,一切似乎都正常。我在我的 Android 项目中尝试了 invalidate()
和 requestLayout()
之类的东西,但没有任何改变。我还尝试在包含 native 组件的 RN 组件中再次调用 render()
(通过更新其状态),但仍然没有成功。我创建了一个原生 Android 项目,其中包含一个 Activity,其中包含与我编写的完全相同的自定义 RelativeLayout,并且一切正常。所以问题似乎出在 React Native 项目方面。
由于旋转手机后一切正常,因此必须有一些生命周期方法重新渲染/重新布局 RN 组件。
那么我的问题是:有这样的方法吗?
非常感谢。
附言。 JWPlayer 基于 ExoPlayer。
最佳答案
我发现实际问题不在于播放,而在于我的自定义 View 是如何呈现的。我在这里添加答案,以防有人遇到同样的问题但找不到问题的真正根源。 This解决方案解决了我的问题。
关于javascript - react native : Native Android UI component with JWPlayer shows no video image,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39798951/