...小技巧在这里帮助我。由于我使用静态视频来显示,所以我将视频的第一帧(通过从视频中提取图像)设置为视频视图的默认背景并在 onPrepare(..)
public void onPrepared(MediaPlayer mp) {
mVideoView.start();
mVideoView.postDelayed(new Runnable() {
@Override
public void run() {
MainActivity.getInstance().runOnUiThread(new Runnable() {
@Override
public void run() {
mVideoView.setBackgroundColor(color.transparent);
btnSkip.setVisibility(View.VISIBLE);
btnSkip.requestFocus();
}
});
}
}, 300);
}
开始视频后延迟了几秒钟。和 onComplete(..) 一样。
@Override
public void onCompletion(MediaPlayer mp) {
btnSkip.setVisibility(View.GONE);
mVideoView.setBackgroundColor(getResources().getColor(R.color.bg));
}
对于多视频播放场景,这是不可行的解决方案。