React Native: нативный компонент пользовательского интерфейса Android с JWPlayer не показывает видеоизображение

Я написал собственный компонент пользовательского интерфейса для Android, который в основном состоит из пользовательского представления (RelativeLayout), которое, в свою очередь, содержит JWPlayer. Как компонент, так и сам проигрыватель правильно отображаются в моем проекте RN (размеры, цвета и т. Д. Имеют правильные значения), но когда я начинаю воспроизведение, я получаю звук без какого-либо изображения.

Однако, когда я поворачиваю телефон, я получаю видео изображение, и все, кажется, работает нормально. Я пробовал такие вещи, как invalidate() а также requestLayout() в моем проекте Android, но ничего не изменилось. Я тоже пробовал звонить render() снова в компоненте RN (путем обновления его состояния), который содержит собственный компонент и все еще не повезло. Я создал собственный проект Android с Activity, который содержит точно такой же пользовательский RelativeLayout, который я написал, и все работает отлично. Таким образом, проблема, кажется, на стороне проекта React Native.

Поскольку после поворота телефона все работает нормально, должен быть какой-то метод жизненного цикла, который перерисовывает / переставляет компонент RN.

Итак, мой вопрос: есть ли такой метод?

Большое спасибо заранее.

PS. JWPlayer основан на ExoPlayer.

1 ответ

Решение

Я обнаружил, что проблема не в воспроизведении, а в том, как отображается мой пользовательский вид. Я добавляю ответ здесь, если кто-то сталкивается с той же проблемой, но не может найти ее источник. Это решение решило мою проблему.

Другие вопросы по тегам