我創建像這樣在運行時VideoView:VideoView不上Android 4.0的工作及以上
@Override
public View getUIElement(){
if(vv==null){
this.vv = new VideoView(this.getContext());
vv.setVideoURI(Uri.parse(this.url));
mc = new MediaController(this.getContext());
vv.setMediaController(mc);
}
return vv;
}
之後,我這個VideoView添加到的LinearLayout我打電話這樣的:
public void initVideo(){
mc.show();
vv.setBackgroundColor(Color.TRANSPARENT);
vv.requestFocus();
vv.start();
Log.v("Video",vv.toString());
}
此代碼在Froyo(2.2)和Gingerbread(2.3.5)上完美工作,但在ICS(4.0)和JB(4.1)上沒有任何反應 - VideoView在父視圖中甚至不可見。你有什麼想法爲什麼? 在Uri.parse()我將URL傳遞給mp4文件。
- 編輯 我忘了說,在ICS中的LogCat中,MediaPlayer甚至沒有被調用(在Froyo和Gingerbread中有一些由MediaPlayer類生成的信息)。
[解決] - 這個問題是正確的LayoutParameters。在API <11 WRAP_CONTENT工作正常。在ICS和更新的我不得不手動設置VideoView的高度。如此微不足道,而且很煩人... – przebar
你能否把你的代碼行設置爲videoview的佈局參數。 –