音频播放器与列表视图

问题描述:

我有音频文件,当我播放另一个文件,然后以前的文件连续播放。 所以如果你有解决方案,请让我知道。音频播放器与列表视图

这里是我的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; 



      } 
} 
    }); 
} 
+0

对于每个位置,你为什么要创建'MediaPlayer'实例? – Piyush 2015-02-11 10:22:35

您需要手动调用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语句中放置一个默认条件!