97干视频,99国产精品懂色,亚洲精品99久久久久中文字幕,伊人五月丁香综合AⅤ,国产精品成人免费999

  您的位置:華清遠(yuǎn)見教育科技集團(tuán) >> 新聞動態(tài) >> Android資料 >> 在Android中使用VideoView播放視頻  
 
在Android中使用VideoView播放視頻
分享到:

在Android中,播放視頻有2種方式,第一種方式是使用MediaPlayer結(jié)合SurfaceView來播放,通過MediaPlayer來控制視頻的播放、暫停、進(jìn)度等,而通過SurfaceView來顯示視頻內(nèi)容;第二種方式是使用VideoView來播放,這個類其實也是繼承了SurfaceView類,并且實現(xiàn)了MediaController.MediaPlayerController這個用于控制媒體播放的接口,另外在VideoView上還有一個用于對媒體播放進(jìn)行控制的面板,包括快進(jìn)、快退、播放、暫停按鈕以及一個進(jìn)度條。使用VideoView播放視頻的好處是簡單,因為它已經(jīng)幫我們實現(xiàn)了SurfaceView以及控制方法,我們只需要直接拿來使用就可以了,但它的缺點是靈活性不夠。而使用MediaPlayer結(jié)合SurfaceView來播放視頻的話,好處是可以更靈活的對其進(jìn)行自定義,但缺點是難度比較大。這次我們先來看如何通過VideoView來實現(xiàn)視頻的播放。

VideoView的常用方法如下:


另外,媒體控制面板(MediaController)上也有一些有用的方法,如下表所示:


下面我們來看一個例子。

首先,我們要定義一個layout,在這個layout中,需要有一個VideoView組件,文件如下:
     <?xml version="1.0" encoding="utf-8"?>
     <LinearLayout xmlns:android="//schemas.android.com/apk/res/android"
        android:orientation="vertical" android:layout_width="fill_parent"
        android:layout_height="fill_parent">
     <VideoView android:id="@+id/videoView1" android:layout_width="match_parent"
         android:layout_height="match_parent"></VideoView>
     </LinearLayout>

這里定義了一個VideoView,它的id為videoVIew1,然后,我們來編寫對應(yīng)的Activity:

package cn.com.farsight.vv;

import android.app.Activity;
        import android.content.pm.ActivityInfo;
        import android.os.Bundle;
        import android.view.Window;
        import android.view.WindowManager;
        import android.widget.MediaController;
        import android.widget.VideoView;
        public class MainActivity extends Activity {

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //去掉頭部title
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        //設(shè)置全屏
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
        //設(shè)置屏幕常亮
         getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
         setContentView(R.layout.main);
         VideoView vv = (VideoView)findViewById(R.id.videoView1);
         vv.setVideoPath("/mnt/sdcard/a5.mp4");
         //設(shè)置媒體控制條
          vv.setMediaController(new MediaController(this));
          vv.start();
          vv.requestFocus();
          }
    }

這樣,就可以播放在/mnt/sdcard/a5.mp4這個視頻文件了。

另外,為了防止用戶誤按返回鍵而退出播放,可以在這個程序中覆蓋onBackPressed方法,在這個方法中來處理用戶點擊返回鍵的動作,例如,只有用戶在短時間內(nèi)點擊2次返回鍵才真正退出播放。

 
 更多相關(guān)文章

·Android編譯過程詳解(三)
·Android HAL 開發(fā)
·Android編譯過程詳解(二)
·Android平板電腦的設(shè)計
·Android編譯過程詳解(一)