1. 程式人生 > >android VideoView視訊引導頁

android VideoView視訊引導頁

        一個好玩的android原生控制元件,現在很多APP都在使用,例如滴滴打車。但是呢,有點小問題就是不能全屏播放,所以我們可以自定義實現全屏播放的功能,程式碼很簡單,頁面很絢麗,可以自己錄製視訊當做引導頁面,2個字:炫酷!~話不多說,看程式碼。 1、建立一個raw包存放要播放的視訊檔案,最好是小視訊或者壓縮以後的視訊,解析度不用太高,否則記憶體低的手機會報記憶體溢位。最好是自己用手機錄一個。哈哈 2、建立自定義CustomVideoView
public class CustomVideoView extends VideoView {
    public CustomVideoView(Context context) {
        super(context);
    }

    public CustomVideoView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public CustomVideoView(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
    }
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
        //我們重新計算高度(這樣就可以匹配不同手機的尺寸)
        int width = getDefaultSize(0, widthMeasureSpec);
        int height = getDefaultSize(0, heightMeasureSpec);
        setMeasuredDimension(width, height);
    }

}
3、MainActivity:
public class MainActivity extends AppCompatActivity {

    private CustomVideoView vv;
    private Button btn_start;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        vv = (CustomVideoView) findViewById(R.id.videoview);
        btn_start = (Button) findViewById(R.id.btn);
        initView();
    }
    private void initView() {
        //設定播放載入路徑
        vv.setVideoURI(Uri.parse("android.resource://"+getPackageName()+"/"+R.raw.info2));
        //播放
        vv.start();
        //迴圈播放
        vv.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
            @Override
            public void onCompletion(MediaPlayer mediaPlayer) {
                vv.start();
            }
        });

    }

    public void onClick(View view) {
        switch (view.getId()){
            case R.id.btn_start:
                Toast.makeText(this,"進入了主頁",Toast.LENGTH_SHORT).show();
                break;
        }
    }
}
4、 activity_main佈局中:
<mifeng.us.mp4.CustomVideoView         //替換成自己的包名
        android:id="@+id/videoview"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
    <Button
        android:id="@+id/btn"
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="56dp"
        android:text="進入"/>
       
5、沒了。。執行吧。