Android音乐播放器制作(二 )点击歌曲实现播放

上次我们实现了把手机里的音频扫描到,然后放在list集合里面,用ListView展示在手机界面上,如果没有看过的可以去看看本人的博客:Android音乐播放器制作(一)扫描本地音乐显示在手机上

这次是在上一次的基础上直接继续写代码,几行代码实现点击那首歌曲就播放那首歌曲,系统已经提供了播放音频的对象了,直接用就可以了,具体如下:

1,声明一个MediaPlayer

private MediaPlayer mediaPlayer;//播放音频的

2,实例化

//初始化
        mediaPlayer = new MediaPlayer();


然后我们就有一个MediaPlayer的对象可以使用了

3,在initView方法里面给ListView设置一个点击监听事件,点击哪个item我们就可以得到这个item的歌曲地址,然后穿入我们创建的播放音频的方法中实现播放:

 mListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
                //创建一个播放音频的方法,把点击到的地址传过去
                //list.get(i).path这个就是歌曲的地址
                play(list.get(i).path);
            }
        });
然后play方法的代码:

 
 
 /**
     * 播放音频的方法
     */
    private void play(String path) {
        //播放之前要先把音频文件重置
        try {
            mediaPlayer.reset();
            //调用方法传进去要播放的音频路径
            mediaPlayer.setDataSource(path);
            //异步准备音频资源
            mediaPlayer.prepareAsync();
            //调用mediaPlayer的监听方法,音频准备完毕会响应此方法
            mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
                @Override
                public void onPrepared(MediaPlayer mediaPlayer) {
                    mediaPlayer.start();//开始音频
                }
            });

        } catch (IOException e) {
            e.printStackTrace();
        }
    }


play方法里面我们调用的是mediaPlayer的异步准备的方法,因为当歌曲很大的时候,如果不是用异步准备,而是直接准备播放的话,就会造成播放卡顿;然后就在mediaPlayer的准备完毕的监听方法中调用start()中开始


持续更新

demo下载地址:http://download.csdn.net/detail/dl10210950/9610737




  • 15
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值