如何播放列表中的音乐

How to play mysic from the list

我正在尝试从 sd 卡中获取歌曲并在列表视图中显示歌曲的详细信息并在其中设置 itemOnclick 监听器。我能够正常播放歌曲,但是当我单击不同的列表中的项目查看另一首歌曲不停止第一首这是我的代码

 listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
            Mediafileinfo item = audioList.get(i);
            Uri myUri = Uri.parse(item.getData());


            mediaPlayer = new MediaPlayer();
            if(!mediaPlayer.isPlaying())
            {mediaPlayer.reset();
                try {
                    mediaPlayer.setDataSource(MainActivity.this, myUri);
                } catch (IOException e) {
                    e.printStackTrace();
                }


                try {
                    mediaPlayer.prepare();
                } catch (IOException e) {
                    e.printStackTrace();
                }

                mediaPlayer.start();

            }
           else if (mediaPlayer.isPlaying()) {
                mediaPlayer.stop();
                   mediaPlayer.reset();
                try {
                    mediaPlayer.setDataSource(MainActivity.this, myUri);
                } catch (IOException e) {
                    e.printStackTrace();
                }

                try {
                    mediaPlayer.prepare();
                } catch (IOException e) {
                    e.printStackTrace();
                }

                mediaPlayer.start();
            }
        }
    });

我尝试设置 isPlaying,如果歌曲正在播放,它将停止播放,但这对我也没有任何提示或我哪里做错了??

在项目点击监听器之外声明这个

 mediaPlayer = new MediaPlayer();

当你点击时,你制作了一个新的mediaPlayer,但是新的mediaPlayer没有播放,所以有两个mediaPlayer在播放。