详解Android App中使用VideoView来实现视频播放的方法
通过VideoView播放视频的步骤:
1、在界面布局文件中定义VideoView组件,或在程序中创建VideoView组件
2、调用VideoView的如下两个方法来加载指定的视频
(1)setVidePath(Stringpath):加载path文件代表的视频
(2)setVideoURI(Uriuri):加载uri所对应的视频
3、调用VideoView的start()、stop()、psuse()方法来控制视频的播放
VideoView通过与MediaController类结合使用,开发者可以不用自己控制播放与暂停
packagecn.com.chenzheng_java; importandroid.app.Activity; importandroid.media.MediaPlayer; importandroid.os.Bundle; importandroid.util.Log; importandroid.widget.MediaController; importandroid.widget.VideoView; importandroid.widget.MediaController.MediaPlayerControl; publicclassVideoActivityextendsActivity{ @Override protectedvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.video); VideoViewvideoView=(VideoView)findViewById(R.id.videoView1); /*** *将播放器关联上一个音频或者视频文件 *videoView.setVideoURI(Uriuri) *videoView.setVideoPath(Stringpath) *以上两个方法都可以。 */ videoView.setVideoPath("data/yueding.mp3"); /** *w为其提供一个控制器,控制其暂停、播放……等功能 */ videoView.setMediaController(newMediaController(this)); /** *视频或者音频到结尾时触发的方法 */ videoView.setOnCompletionListener(newMediaPlayer.OnCompletionListener(){ @Override publicvoidonCompletion(MediaPlayermp){ Log.i("通知","完成"); } }); videoView.setOnErrorListener(newMediaPlayer.OnErrorListener(){ @Override publicbooleanonError(MediaPlayermp,intwhat,intextra){ Log.i("通知","播放中出现错误"); returnfalse; } }); } }
video.xml
<?xmlversion="1.0"encoding="utf-8"?> <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"android:layout_height="match_parent" android:orientation="horizontal"> <VideoViewandroid:layout_height="match_parent"android:id="@+id/videoView1" android:layout_width="wrap_content"></VideoView> </LinearLayout>
当然,我们也可以播放网络上的多媒体。