我使用VideoView作爲網絡視頻,並且我還有一個位圖對象包含相應的縮略圖圖像。現在應該如何將位圖設置爲VideoView來顯示thumnail?問題在VideoView中顯示縮略圖圖像
我使用
videoView.setBackgroundDrawable(new BitmapDrawable(getResources(), bitmap));
但是當我播放這段視頻,視頻沒有顯示,而是始終顯示這種靜態的縮略圖。
任何提示將不勝感激。謝謝。
我使用VideoView作爲網絡視頻,並且我還有一個位圖對象包含相應的縮略圖圖像。現在應該如何將位圖設置爲VideoView來顯示thumnail?問題在VideoView中顯示縮略圖圖像
我使用
videoView.setBackgroundDrawable(new BitmapDrawable(getResources(), bitmap));
但是當我播放這段視頻,視頻沒有顯示,而是始終顯示這種靜態的縮略圖。
任何提示將不勝感激。謝謝。
VideoView
是SurfaceView
的子類,它在顯示方面有一些特殊的行爲。 SurfaceView
內容實際上是在視圖層次結構下面的一個窗口中繪製的,並且該視圖只是在當前窗口中充當一個洞,因此內容是可見的。因此,如果您將任何內容應用於視圖本身(如背景),它實際上將在視頻內容的頂部進行Z順序。另外,如果您將任何東西放置在VideoView
下面,由於這個「洞」,它也將不可見。
如果您希望在視頻未播放期間在此空間中顯示內容,則需要將其放置在VideoView
之上的單獨視圖中,您可以在視頻播放狀態更改時隱藏/顯示該視圖,或者您需要設置/清除視頻播放狀態更改時設置的背景圖像。
HTH!
使用此代碼
BitmapDrawable bitmapDrawable = new BitmapDrawable(bitmapImage);
videoview.setBackgroundDrawable(bitmapDrawable);
videoview.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
public void onPrepared(MediaPlayer mp) {
videoview.setBackgroundDrawable(null);
}
});
你如何檢測到VideoView開始播放? – Andy