Как заставить нажать X(закрыть, кнопка назад) в режиме отображения (3) VrVideoView?

Я делаю приложение VR Android с использованием VrVideoView. Я хочу принудительно нажать кнопку "Закрыть (X, кнопка назад)" после воспроизведения видео. То есть я хочу вернуться в MainActivity после завершения видео. Ниже приведены коды, которые я пробовал. Однако я не вернулся к MainActivity после того, как видео было закончено. Если вы знаете, как, пожалуйста, дайте мне знать.

1.

videoWidgetView.pauseVideo();
videoWidgetView.seekTo(0);
videoWidgetView.shutdown();

2.

videoWidgetView.pauseVideo();
videoWidgetView.seekTo(0);
finishActivity(0);

3.

videoWidgetView.pauseVideo();
videoWidgetView.seekTo(0);
findViewById(R.id.ui_back_button).performClick();

4.

videoWidgetView.pauseVideo();
videoWidgetView.seekTo(0);
Field f;

try {

     f =videoWidgetView.getClass().getSuperclass().getDeclaredField("vrUiLayer");
     f.setAccessible(true);
     UiLayer vrLayer = (UiLayer) f.get(videoWidgetView);

     vrLayer.getView().findViewById(R.id.ui_back_button).performClick();

} 
catch (NoSuchFieldException e) {
      e.printStackTrace();
} 
catch (IllegalAccessException e) {
   e.printStackTrace();
}

1 ответ

Решение

Просто переопределить OnDestroy метод и добавьте в него эти строки:

@Override
protected void onDestroy() {
    videoWidgetView.shutdown();
    super.onDestroy();
}

Тогда позвони onDestroy() метод в onCompletion метод:

    @Override
    public void onCompletion() {
        videoWidgetView.seekTo(0);
        videoWidgetView.pauseVideo();
        onDestroy();
    }

Надеюсь, что это работает:)

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