我有一个对话框,我在其中放置一个用于MediaCodec实例的表面来播放视频。
当我加载此对话框时,表面会显示透明几秒钟,直到mediacodec准备好并且视频播放正常。由于这是一个对话框,因此透明表面会显示下面的活动,而不是黑色背景。
由于我不能将画布自己画成黑色,因为这会阻止mediacodec访问它,我该如何解决这个问题呢?
答案 0 :(得分:0)
您不能在对话框父布局中定义黑色背景吗?
这样即使表面是透明的,下面的对话框也不会是
编辑1:
这可以使表面视图透明,也许可以尝试使用它:
SurfaceView sfvTrack = (SurfaceView)findViewById(R.id.sfvTrack);
sfvTrack.setZOrderOnTop(true); // necessary
SurfaceHolder sfhTrackHolder = sfvTrack.getHolder();
sfhTrackHolder.setFormat(PixelFormat.TRANSPARENT);