我想在两个单独的课堂上播放两个视频。但在恢复应用程序后,Videoview会遇到黑屏,并在点击后播放视频。
我尝试过seekto和getposition,但又收到了同样的结果。
答案 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方法中保存相同的元素并添加到包中,在恢复时您可以访问变量。