Android MediaPlayer详解视屏播放之VideoView(三)
效果图
Android MediaPlayer详解(一):点击打开链接
Android MediaPlayer音频播放(二):点击打开链接
Android MediaPlayer视频播放之SurfaceView(四):点击打开链接
MediaPlayer 视屏播放之VideoView
1.XML布局文件
<?
xml version=
"1.0"
encoding=
"utf-8"
?>
<
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"
android
:orientation=
"vertical"
tools
:context=
"com.example.cxy.mediaplayer.MainActivity"
>
<
VideoView
android
:id=
"@+id/videoView"
android
:layout_width=
"wrap_content"
android
:layout_height=
"300dp"
/>
<
Button
android
:id=
"@+id/btn_start"
android
:layout_width=
"wrap_content"
android
:layout_height=
"wrap_content"
android
:text=
"开始"
/>
<
Button
android
:id=
"@+id/btn_pause"
android
:layout_width=
"wrap_content"
android
:layout_height=
"wrap_content"
android
:text=
"暂停 "
/>
<
Button
android
:id=
"@+id/btn_stop"
android
:layout_width=
"wrap_content"
android
:layout_height=
"wrap_content"
android
:text=
"终止"
/>
</
LinearLayout
>
2.主类MainActivity
package com.example.cxy.mediaplayer;
import android.net.Uri;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.MediaController;
import android.widget.VideoView;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private VideoView videoView;
private Button btn_start;
private Button btn_pause;
private Button btn_stop;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
}
private void initView() {
videoView = (VideoView) findViewById(R.id.videoView);
btn_start = (Button) findViewById(R.id.btn_start);
btn_pause = (Button) findViewById(R.id.btn_pause);
btn_stop = (Button) findViewById(R.id.btn_stop);
btn_start.setOnClickListener(this);
btn_pause.setOnClickListener(this);
btn_stop.setOnClickListener(this);
//根据文件路径播放
//if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
//videoView.setVideoPath(Environment.getExternalStorageDirectory() + "/oppo.3gp");
//}
//在res下创建raw文件用于存放视屏并读取放在raw目录下的文件
videoView.setVideoURI(Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.oppo));
videoView.setMediaController(new MediaController(this));
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn_start:
videoView.start();
break;
case R.id.btn_pause:
videoView.pause();
break;
case R.id.btn_stop:
videoView.stopPlayback();
break;
}
}
}