Lesson3媒体播放器第二阶段课堂回顾1. 如何让控件动起来?2. 自定义控件的原理3. 自定义属性的两种方法4. 实现音量控件多媒体简介 多媒体是计算机和视频技术的结合,实际上它是两个媒体:声音和图像 音频和视频的播放,我们都会用到MediaPlayer 这个类进行播放从源文件中播放1 ,在项目的 res/raw 目录下,放置一个android 支持的多媒体文件,如 MP3 ,会在 R 文件中生成对应的索引2 ,通过 MediaPlayer.create(this, R.id.et_mp3) 创建一个文件3 ,使用 start 播放核心代码mediaplayer = MediaPlayer.create(this, R.raw.music02);try {mediaplayer.start();} catch (IllegalStateException e) {e.printStackTrace();} 注:将 muisc02.mp3 文件放入 res/raw 的文件夹中从文件系统中播放1 ,实例化一个 MediaPlayer2 , MediaPlayer.setData 方法调用(输入文件所在路径)3 ,调用 MediaPlayer.prepare 进行准备4 ,调用 start 进行播放核心代码private void createMusicFromPath(String path){mediaplayer = new MediaPlayer();try {mediaplayer.setDataSource(path);mediaplayer.prepare();mediaplayer.start();} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();} }注:将音频文件放入在手机的 sdcard, 输入路径即可播放播放网络音乐1 ,获取音乐链接地址A ,通过地址创建 Uri, 通过 MediaPlayer.create(this, uri) 创建,获取 player 对象B , new 出 MediaPlayer 对象,通过 MediaPlayer.setData(webPath) 创建 player 对象,然后调用prepare();2 ,调用 start 方法进行播放音乐播放器多媒体状态使用 SeekBar 实现控制播放位置功能1 ,在视图 xml 中拖入 SeekBar 控件2 ,设置 seekBar.setMax(mediaPlayer.getDuration()) 为媒体的最大长度3 ,实现控件的 OnSeekBarChangeListener 接口4 ,实现 onProgressChanged(// 当进度状态发生变化时候 SeekBar seekBar, int progress,// 当前的进度 boolean fromUser)// 是否由用户操作导致public void onProgressChanged(SeekBar arg0, int progress, boolean isFromUser) {if(isFromUser){mediaPlayer.seekTo(progress);}}实现进度条 SeekBar 自动移动效果//1, 创建一个线程Runnable run = new Runnable() {public void run() ...