首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >视频视图不播放视频

视频视图不播放视频
EN

Stack Overflow用户
提问于 2013-07-09 14:11:30
回答 2查看 6.7K关注 0票数 1

我有一个播放视频的方法:

代码语言:javascript
复制
private void changeVideoState() {
    playing = !playing;
    if (playing) {
        videoView.start();
        play.setVisibility(View.GONE);
        stop.setVisibility(View.VISIBLE);
    } else {
        videoView.stopPlayback();
        stop.setVisibility(View.GONE);
        play.setVisibility(View.VISIBLE);
    }
}

第一次调用该方法时,正在播放视频。

但在其他任何时候,当我试图调用videoView.start()时,什么都不会发生。

以下是视频视图的initialization

代码语言:javascript
复制
    videoView = (VideoView) findViewById(R.id.preview);
    MediaController mc = new MediaController(getActivity());
    // mc.setAnchorView(videoView);
    mc.setMediaPlayer(videoView);
    videoView.setMediaController(mc);
    videoView.setVideoURI(Uri.fromFile(file));
EN

回答 2

Stack Overflow用户

发布于 2013-07-10 07:38:07

试试这个one.It对我来说很好。

代码语言:javascript
复制
VideoView videoView;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    videoView = (VideoView)findViewById(R.id.videoView);        
    videoView.setVideoPath("/sdcard/sample.3gp");
    videoView.start();  
}

或,

把你的视频放在res/raw folder.And中。

代码语言:javascript
复制
public void onCreate(Bundle savedInstanceState)
    {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.main);
       showVideo();
   }
private void showVideo()
{
    VideoView vd = (VideoView)findViewById(R.id.videoView);
    Uri uri = Uri.parse("android.resource://package/"+R.raw.movie);
    MediaController mc = new MediaController(this);
    vd.setMediaController(mc);
    vd.setVideoURI(uri);
    vd.start();
}

当然,在真正的设备中尝试它,而不是在模拟器中。

票数 0
EN

Stack Overflow用户

发布于 2018-05-21 12:09:12

这是我正在使用的代码

代码语言:javascript
复制
    String _video_link ="http://techslides.com/demos/sample-videos/small.mp4";

    vv = (VideoView)findViewById(R.id.vv);

    try {
        MediaController mediacontroller = new MediaController(this);
        mediacontroller.setAnchorView(vv);

        Uri uri = Uri.parse(_video_link);
        vv.setMediaController(mediacontroller);
        vv.setVideoURI(uri);
        vv.seekTo(1);

    } catch (Exception e) {
        Log.e("Error", e.getMessage());
        e.printStackTrace();
    }

    vv.requestFocus();
    vv.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
        public void onPrepared(MediaPlayer mp) {
            mp.setLooping(true);
            vv.start();
        }
    });
    vv.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
        @Override
        public void onCompletion(MediaPlayer mp)
        {
            vv.resume();
        }
    });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17550502

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档