`
1140566087
  • 浏览: 547780 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
博客专栏
2c4ae07c-10c2-3bb0-a106-d91fe0a10f37
c/c++ 入门笔记
浏览量:18076
3161ba8d-c410-3ef9-871c-3e48524c5263
Android 学习笔记
浏览量:309525
Group-logo
J2ME 基础学习课程集
浏览量:18008
A98a97d4-eb03-3faf-af96-c7c28f709feb
Spring 学习过程记录...
浏览量:17195
社区版块
存档分类
最新评论

Android 之 使用VideoView播放视频

阅读更多
1、在Android 中播放视频的方式有两种:

* 第一种方式是使用MediaPlayer 结合SurfaceView 来播放,通过MediaPlayer来控制视频的播放、暂停、进度等;
通过SurfaceView 来显示视频内容;
优点:灵活性高,可以进行自定义;
缺点:难度比较大;

* 第二种方式是使用VideoView 来播放,这个类其实也是继承了SurfaceView 类,并且实现了MediaController.
MediaPlayerController 这个用于控制媒体播放的接口,另外在VideoView上还有一个用于对媒体播放进行控制
的面板,包括快进、快退、播放、暂停按钮以及一个进度条;
优点:比较简单,可以直接进行使用;
缺点:灵活性不高;

2、下面介绍VideoView的使用方法:
* setVideoViewPath(String path); 设置播放视频的路径;
* setVideoURL(Uri uri); 设置视频的URI
* start(); 开始播放;
* seekTo(int msec); 定位;
* pause(); 暂停播放;
* stop(); 停止播放;
* setMediaController(MediaController); 设置MediaController 对象;

媒体控制面版常用方法:MediaController:
* hide(); 隐藏MediaController;
* show(); 显示MediaController
* show(int timeout); 设置MediaController显示的时间,以毫秒计算,如果设置为0则一直到调用hide()时隐藏;


3、案例:实现视频播放效果:
java代码:

package com.example.mutilmediaapp_videoview;

import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.content.pm.ActivityInfo;
import android.view.Menu;
import android.view.Window;
import android.view.WindowManager;
import android.widget.MediaController;
import android.widget.VideoView;

public class MainActivity extends Activity {

    private VideoView video;
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        
        /* 设置播放视频时候不需要的部分 *//* 以下代码需要写在setContentView();之前 */
        
        /* 去掉title */
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        
        /* 设置全屏 */
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
        
        /* 设置屏幕常亮 *//* flag:标记 ; */
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
        
        setContentView(R.layout.main);
        
        /* 获取组件对象 */
        video = (VideoView) findViewById(R.id.videoView);
        
        /* 获取MediaController对象,控制媒体播放 */
        MediaController mc = new MediaController(this);
        
        video.setMediaController(mc);
        
        /* 设置URI , 指定数据 */
        video.setVideoURI(Uri.parse("/mnt/sdcard/aa.mp4"));

        /* 开始播放视频 */
        video.start();
        
        /*  请求获取焦点 */
        video.requestFocus();
        
    }

    
}
分享到:
评论
2 楼 hety163 2014-01-02  
videoview哪里有stop()方法???查了api根本就没有stop()方法
1 楼 超级賽亞人 2013-09-18  
博主,上源码啊,求图求真相

相关推荐

Global site tag (gtag.js) - Google Analytics