恢复应用后,Videoview会遇到黑屏,并在点击后播放视频

时间:2013-11-20 05:16:06

标签: android android-videoview

我想在两个单独的课堂上播放两个视频。但在恢复应用程序后,Videoview会遇到黑屏,并在点击后播放视频。

我尝试过seekto和getposition,但又收到了同样的结果。

1 个答案:

答案 0 :(得分:0)

您是否尝试过在简历中恢复视频?

另外

 @Override
 public Object onRetainNonConfigurationInstance() {
   ArrayList<Object> sessionObject = new ArrayList<Object>();
   sessionObject.add(videoView.isPlaying());
   sessionObject.add(videoView.getCurrentPosition());
   sessionObject.add(videoView.getTag());
   return sessionObject;

 }

在Oncreate活动中

    ArrayList<Object> initialPosition = new ArrayList<Object>();
    initialPosition.add(false);
    initialPosition.add(0);
    initialPosition.add(0);
    @SuppressWarnings("unchecked")
    ArrayList<Object> currentPositionObject = (ArrayList<Object>) (getLastNonConfigurationInstance() != null ? getLastNonConfigurationInstance()
            : initialPosition);
    int currentPosition = Integer.parseInt(currentPositionObject.get(1)
            .toString());
    Boolean isPlaying = (Boolean) currentPositionObject.get(0);

现在,您可以按照以下步骤查找您想要的视频,并按照以下步骤启动。

    if (currentPosition != 0) {
        if (isPlaying) {

            videoView.start();
            videoView.seekTo(currentPosition);
        } else {

            videoView.seekTo(currentPosition);
            videoView.pause();
        }

    }

但是我仍然遇到方向改变稍有延迟的问题。

您可以在onPause方法中保存相同的元素并添加到包中,在恢复时您可以访问变量。