【发布时间】:2015-01-04 01:54:01
【问题描述】:
我是安卓开发的新手。我有一个 mp3 音频播放器代码,可以从 url 播放 mp3。我想在媒体播放器准备缓冲时显示加载对话框
这是我的代码,我在准备中显示了一个对话框,但它连续运行并且无法播放 mp3。 我不知道我在哪里定义 smp.setOnPreparedListener。请告诉我,我可以在播放功能或外部播放功能中定义它吗?请帮助我这里是我的代码。在此先感谢
//播放MP3功能
public void playSong(int naatindex){
// Play song
try {
mp.reset();
mp.setDataSource(naatpaths[naatindex]);
tv = (TextView) this.findViewById(R.id.mywidget);
tv.setSelected(true); // Set focus to the textview
tv.setText(naattitles[naatindex]);
mp.prepare();
mp.start();
// Changing Button Image to pause image
btnPlay.setImageResource(R.drawable.btn_pause);
// set Progress bar values
songProgressBar.setProgress(0);
songProgressBar.setMax(100);
// Updating progress bar
updateProgressBar();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
这是我的 mp.setOnPreparedListener 代码
ProgressDialog progressDialog = ProgressDialog.show(this,
"Loading Title", "Loading Message");
mp.setOnPreparedListener(new OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
if (progressDialog != null && progressDialog.isShowing()){
progressDialog.dismiss();
}
mp.start();
}
});
【问题讨论】: