使用从SQLite加载的文件路径,在Android中的ListView项目中使用按钮在媒体播放器上播放声音文件

时间:2015-04-22 08:06:14

标签: sqlite listview audio android-listview

我录制了一些声音,然后将它们保存在/ storage / emulated / 0 / AudioRecorder文件夹中。然后我将文件路径保存在SQLite数据库中。因此,当我基于baseadapter填充我的listview时,我的getview中有clicklistener按钮。到目前为止一切似乎都很好但是当我点击按钮时没有任何反应。调试显示按钮找到正确列表项的位置,播放声音的方法找到文件路径但没有播放。

 public void playSoundItem(int id)
 {

    final String SoundFile = MyItems.get(id).getItemFilepath();
    mMediaPlayer = new MediaPlayer();
    try {
        //Uri mp4 = Uri.parse(file + "/" + myList.get(soundPosition));
        //Uri mp4 = Uri.parse(SoundFile);

        mMediaPlayer = new MediaPlayer();
        mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
        mMediaPlayer.setDataSource(SoundFile);
        mMediaPlayer.prepare(); 
        mMediaPlayer.start();
        mMediaPlayer.setOnCompletionListener(onCompletionListener);
    } catch (Exception e) {
    }
}

我用uri解析测试了它,并且再次测试了它。 SoundFile的价值是: / storage / emulated / 0 / AudioRecorder / MySound21-04-2015 20:38.mp4  我是否必须将其解析为其他内容

1 个答案:

答案 0 :(得分:0)

您先检查列表视图是否可点击