VideoView播放視訊是出現黑邊的問題
問題描述:在使用VideoView播放視訊檔案時,如果視訊的解析度較小就會出現視訊跑偏(不在螢幕中央等情況)
可以通過重寫VideoView來解決該問題
public class CosVideoView extends VideoView {
public
CosVideoView (Context context) {
super(context);
}
public
CosVideoView (Context context, AttributeSet attrs) {
super(context, attrs);
`
}
public CosVideoView
super(context, attrs, defStyle);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
//主要方法在這裡
int width = getDefaultSize(0, widthMeasureSpec);
int height = getDefaultSize(0, heightMeasureSpec);
setMeasuredDimension(width, height);
}
@Override
public void setOnPreparedListener(OnPreparedListener l) {
super.setOnPreparedListener(l);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
return super.onKeyDown(keyCode, event);
}
}
通過設定VideoView的setMeasureDimension()方法便可解決該問題。