Android应用软件开发

194课时
1.7K学过
8分

课程评价 (0)

请对课程作出评价:
0/300

学员评价

暂无精选评价
3分钟

6.4 相关知识

相关知识

MediaPlayer主要用于播放音频,它是没有提供输出图像的输出界面,因此需要使用SurfaceView控件将它与MediaPlayer结合起来,从而达到视频的输出效果。

SurfaceView是视图控件类View的字类,因此它也属于UI控件。该控件中内嵌了一个专门用于绘制图像的Surface区域。它是一块屏幕缓冲区域,可以在上面绘制View及其子类。用户通过SurfaceView控制该Surface的位置。可以通过SurfaceHolder接口访问Surface,获取该接口需要在SurfaceView中调用getHolder()方法。SurfaceHolder.Callback用来实现接口,以接收surface变化的消息。

Android API中还提供了一个专门用于视频播放的类VideoView,它是SurfaceView的子类,封装了MediaPlayer中对于播放进度及状态控制的各种方法。通过它可以直接在界面中建立一个用于播放视频的控件,使用时只需直接创建VideoView对象即可。

一个使用Videoview实现的视频播放器的代码如下所示:

public class VideoViewPlayerActivity extends Activity {

@override

protected void onCreate(Bundle savedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.video_view_player);

VideoView videoView=(VideoView)findViewById(R.id.videoView1);

//指定需要播放的视频的地址

videoView. setVideoURI(Uri.parse(“android.resource://”+getPackageName()+"/"+R.raw.video));

//设置播放器的控制条

videoView. setMediaController (new MediaController(this));

//开始播放视顺

VideoView.start ();

}

}