音频播放器与列表视图
问题描述:
我有音频文件,当我播放另一个文件,然后以前的文件连续播放。 所以如果你有解决方案,请让我知道。音频播放器与列表视图
这里是我的main.java
公共类MusicAndroidActivity延伸活动{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
buttonPlay = (Button) findViewById(R.id.play);
music = (ListView)findViewById(R.id.music);
// music.setAdapter(new ArrayAdapter<String>(this,, str));
music.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,int position, long id) {
switch (position){
case 0:
MediaPlayer mp = MediaPlayer.create(getApplicationContext(),R.raw.hosannatamil);
mp.start();
mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
mp.release();
}
});
break;
case 1:
MediaPlayer mp1 = MediaPlayer.create(getApplicationContext(),R.raw.one_less);
mp1.start();
mp1.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
mp.release();
}
});
break;
case 2:
MediaPlayer mp2 = MediaPlayer.create(getApplicationContext(),R.raw.words);
mp2.start();
mp2.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
mp.release();
}
});
break;
}
}
});
}
答
您需要手动调用MediaPlayer.stop()如果你想停止播放。
如果您想再次启动相同的MediaPlayer,则必须在此之前先拨打.prepare()。
欲了解更多信息,请阅读reference page,并看看那里的状态图。
答
if(mediaPlayer.isPlaying())
{
//stop or pause your media player mediaPlayer.stop(); or mediaPlayer.pause();
mediaPlayer.pause();
}
else
{
mediaPlayer.start();
}
将这个条件switch语句中mediaPlayer.start(前)也创造了媒体播放器的全球基准,而不是像创建的MediaPlayer媒体播放器,而不是MediaPlayer的熔点,MP1,MP2等三个参考,因为你可以创建介质与一个条件相同的引用中的Player对象必须始终为真,并在switch语句中放置一个默认条件!
对于每个位置,你为什么要创建'MediaPlayer'实例? – Piyush 2015-02-11 10:22:35