简介
VideoView 在Android中是一个用户界面组件,它允许开发者在Android设备的屏幕上播放视频文件。它是Android SDK的一部分,位于android.widget包中。VideoView提供了一种简单的方法来嵌入和控制视频播放,包括设置视频源、开始、暂停、 seek(跳转到视频的特定位置)以及显示视频的控件等基本功能。开发人员可以轻松地将VideoView添加到布局文件中,并通过Java或Kotlin代码来控制其行为。VideoView
是Android提供的一个用于显示视频的视图组件,它简化了在应用中播放视频的复杂性。VideoView
能够处理视频文件的加载、解码和显示,同时也支持播放、暂停、停止等基本的播放控制。通过设置视频的路径或URI,VideoView
可以播放本地文件系统、资源文件或网络上的视频。
MediaController
是一个封装了视频播放控制界面的类,包括播放/暂停按钮、进度条、前进/后退等控制项。它作为一个浮动的UI元素出现,通常在视频播放时从屏幕底部滑入,并在用户触摸屏幕其他地方或按下播放控制后自动隐藏。通过与VideoView
绑定,MediaController
提供了用户直接控制视频播放的功能,而无需开发者手动实现这些控制逻辑。
一、属性 (Attributes):
- android:id: 控件的唯一标识符。
- android:layout_width: 控件的宽度,如 "match_parent" 或 "wrap_content"。
- android:layout_height: 控件的高度,同样可以是 "match_parent" 或 "wrap_content"。
- android:src: 直接指定视频资源的URI,可以是本地文件路径或者网络URL。
二、方法 (Methods):
- setVideoPath(String path): 设置要播放的视频文件的路径,可以是本地路径。
- setVideoURI(Uri uri): 与
setVideoPath
类似,但接受一个Uri对象,更通用,支持更多来源。 - start(): 开始或继续播放视频。
- pause(): 暂停视频播放。
- stopPlayback(): 停止播放视频并释放资源。
- seekTo(int msec): 跳转到视频的指定时间点(以毫秒为单位)。
- isPlaying(): 判断视频是否正在播放,返回布尔值。
- getDuration(): 获取视频的总时长(毫秒)。
- getCurrentPosition(): 获取当前播放位置(毫秒)。
- setOnPreparedListener(OnPreparedListener listener): 设置准备完成监听器,当视频准备就绪时被调用。
- setOnErrorListener(OnErrorListener listener): 设置错误监听器