我的任务 - 在SurfaceView中停止显示图像后,在SurfaceView上播放视频
我的游戏代码
mPlayer.setOnCompletionListener(onCompletionListener);
mPlayer.setDisplay(view.getHolder());
mPlayer.reset();
mPlayer.setDataSource(file.getAbsolutePath());
mPlayer.prepare();
mPlayer.start();
所有好的视频播放
在onCompletion
mPlayer.reset();
mPlayer.setDisplay(null);
view.setBackgroundDrawable(Drawable.createFromPath(file.toString()));
但是图像是透明的,在背景上我看到最后一个视频帧 - 它不好。表面有多清晰?
我尝试使用
holder.lockCanvas()
但是这返回null,为什么?
答案 0 :(得分:3)
我有同样的问题,我在播放器发布后使用这两行来修复它。
surfaceViewHolder.setFormat(PixelFormat.TRANSPARENT);
surfaceViewHolder.setFormat(PixelFormat.OPAQUE);