Android之MediaPlay播放视频

来源:互联网 发布:garageband软件下载 编辑:程序博客网 时间:2024/06/06 07:01

——使用MediaPlay+SurfaceView播放视频

MediaPlay主要是播放音频,所有没有界面,需要使用surfaceView绘制输出界面。

使用步骤:

  1)在界面的布局文件中定义SurfaceView组件。和播放按钮,暂停按钮

  2)创建MediaPlayer对象,加载指定的视频文件

  3)setDisplay()用来指定MediaPlay播放的视频图像显示位置

     player.setDisplay(surfaceView.getHolder());

  4)调用MediaPlayerstart,stop,pause方法控制视频的播放

注意:要把视频文件放入到Genymotion虚拟机中的SD卡里,放到第一层的0文件下,看下图:


代码编写:

1.布局:

<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">    <Button        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="开始"         android:onClick="start"/>    <Button         android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="暂停"        android:onClick="stop"/>    <SurfaceView         android:layout_width="match_parent"        android:layout_height="match_parent"        android:id="@+id/sv"/></LinearLayout>
2.MainActivity:

开始按钮:

public void start(View view){try {mediaPlayer.setDisplay(surfaceView.getHolder());mediaPlayer.prepare();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();} mediaPlayer.start();}

暂停按钮:

public void stop(View view){mediaPlayer.pause();}

最后在OnCreat中:

mediaPlayer=new MediaPlayer();try {mediaPlayer.setDataSource("/sdcard/areyouok.3gp");} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();} 
效果图:



0 0
原创粉丝点击