1.自定义一个MyVideoView,继承自VideoView,重写三个方法:
说明:这里只是为了让VideoView播放的时候占满整个Activity,不自定义同样可以正常使用android系统的VideoView;
public class MyVideoView extends VideoView {
public MyVideoView(Context context) {
super(context);
}
public MyVideoView(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
//父容器的宽高
int wSize = MeasureSpec.getSize(widthMeasureSpec);
int hSize = MeasureSpec.getSize(heightMeasureSpec);
//设置VideoView的实际显示宽高占满整个Activity
setMeasuredDimension(wSize,hSize);
}
}
**
2.xml布局文件
**
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.longshun.videoview.MyGoOverVideoView
android:id="@+id/My_video_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:onClick="btnControl"
android:text="播放"
/>
</FrameLayout>
**
3.Activity使用:
**
package com.longshun.videoview;
import android.app.Activity;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.VideoView;
/**
* Created by LongShun on 2015/9/28.
* Author:LongShun
* Email:1261972397@qq.com
*/
public class VideoViewGoOver extends Activity {
private VideoView videoView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.video_view_go_over_activity);
videoView = (VideoView) findViewById(R.id.My_video_view);
//1.1.设置VideoView的控制器
videoView.setMediaController(new MediaController(this));
//可以指定网络路径和本地路径
//本地资源Uri格式:android.resource://包名/资源地址;
Uri uri = Uri.parse(
"android.resource://"
+ getPackageName()+"/"
+ R.raw.video_test
);
videoView.setVideoURI(uri);
}
@Override
protected void onPause() {
super.onPause();
videoView.stopPlayback();
}
public void btnControl(View view) {
//控制Video的播放和暂停
Button button = (Button) view;
if (videoView.isPlaying()){
videoView.pause();
button.setText("播放");
}else {
videoView.start();
button.setText("暂停");
}
}
}