Android開發之使用VideoView播放視訊
阿新 • • 發佈:2019-01-10
Android提供了 VideoView元件,它的作用與ImageView類似,只是ImageView用於顯示圖片,而VideoView用於播放視訊。
使用VideoView播放視訊的步驟如下:
1) 在介面佈局檔案中定義VideoView元件,或在程式中建立VideoView元件。
2) 呼叫VideoView的如下兩個方法來載入指定視訊。
setVideoPath(String path):載入 path 檔案所代表的視訊。
setVideoURI(Uri uri):載入uri所對應的視訊。
3) 呼叫VideoView的start()、stop()、pause()方法來控制視訊播放。
實際上與VideoView—起結合使用的還有一個MediaController類,它的作用是提供一個友好的圖形控制介面,通過該控制介面來控制視訊的播放。
下面的程式示範瞭如何使用VideoView來播放視訊:
public class VideoViewDemo extends Activity { VideoView videoView; //建立一個MediaController的物件用於控制視訊的播放 MediaController mediaController; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); getWindow().setFormat(PixelFormat.TRANSLUCENT); setContentView(R.layout.main); //獲取介面上的VideoView元件 videoView=(VideoView)findViewById(R.id.videoView); //初始化mediaController mediaController=new MediaController(this); //將videoView與mediaController建立關聯 videoView.setMediaController(mediaController); //將mediaController與videoView建立關聯 mediaController.setMediaPlayer(videoView); File vFile=new File("/mnt/sdcard/meitianyifenzhong.3gp"); if (vFile.exists()) {//如果檔案存在 videoView.setVideoPath(vFile.getAbsolutePath()); //讓videoView獲得焦點 videoView.requestFocus(); } } }
佈局介面:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" > <VideoView android:id="@+id/videoView" android:layout_width="match_parent" android:layout_height="wrap_content"/> </LinearLayout>
程式執行效果圖:
如圖所示:介面中快進鍵、暫停鍵、後退鍵,以及播放進度條就是由MediaPlayerController所提供的。
提示:VideoView只能播放標準的MP4、3GP檔案,其它格式的檔案將無法播放。