您的位置:首页 > 移动开发 > Android开发

VideoView中实现循环播放视频的问题

2016-07-18 15:31 543 查看
        本文转载来自:http://blog.sina.com.cn/s/blog_ea95a18b0102wg84.html          

 关于这一点我很惭愧,研究了两个小时各种方法几乎都用到了,可是半毛钱的作用也没有起。

  最后,静下心来想了想突然醒悟了,看源码多么强大的领悟。于是乎顺藤摸瓜我便很快解决了问题,顺利完成了循环播放视频。
  实现效果描述:给手机SDcard的某个目录下放N个视频文件,然后通过你自己写的App播放视频的组件VideoView来实现循环播放。



也就是说,我们要实现的播放顺序是1-2-3-4-1-2-3-4.......
直接上代码了:

package com.hangcheng;  

  

import com.example.bdcustomer_demo.R;  

import com.hangcheng.view.MyVideoView;  

  

import android.app.Activity;  

import android.media.MediaPlayer;  

import android.os.Bundle;  

import android.view.Window;  

  

public class VideoActivity extends Activity {  

    private MyVideoView myVideoView;  

    private String videopath;  

  

    @Override  

    protected void onCreate(Bundle savedInstanceState) {  

        super.onCreate(savedInstanceState);  

        requestWindowFeature(Window.FEATURE_NO_TITLE);  

        setContentView(R.layout.video);  

  

        initView();  

  

        videopath = VideoActivity.this.getIntent().getStringExtra("videopath");  

  

        myVideoView.setVideoPath(videopath);  

        myVideoView.start();  

        myVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {  

  

            @Override  

            public void onPrepared(MediaPlayer mp) {  

                mp.start();  

                mp.setLooping(true);  

  

            }  

        });  

  

        myVideoView  

                .setOnCompletionListener(new MediaPlayer.OnCompletionListener() {  

  

                    @Override  

                    public void onCompletion(MediaPlayer mp) {  

                        myVideoView.setVideoPath(videopath);  

                        myVideoView.start();  

  

                    }  

                });  

  

    }  

  

    private void initView() {  

  

        myVideoView = (MyVideoView) findViewById(R.id.video);  

  

    }  

  

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Android视频播放