2012-02-13 60 views
0

對不起我的英文不好 ..可能你會看到一些語法錯誤..播放MP3在ListView在Android中

我學習編程的Android應用程序,我需要幫助。 我想在'res/raw'文件夾中放一些mp3文件,我想在Listview上的每個項目上放置特定的文本。因此,當用戶點擊他想要的項目(例如歌曲標題)時,相關的mp3就會啓動。

我想如果你能教我如何只播放一個MP3(因爲用戶可以在第一個MP3播放期間點擊很多項目)。 我是新的Android世界,請耐心等待,並使用簡單的條款:)

祝您有美好的一天, Riccardo。

回答

0

由於你的問題不包括你的任何特定的代碼,我可以給你一些指導。

  1. 聲明對MediaPlayer實例的類成員引用。例如它應該在類的範圍內,它被宣佈,而不是在任何方法:

    public class MyListView extends ListView { 
        private MediaPlayer mp = null; 
        //your methods here 
    } 
    
  2. 在你的OnClickListener,檢查實例爲null,如果沒有,停止和釋放,並創建一個新的實例與新歌。

    public void onClick(View v) { 
        if (mp != null) { 
         mp.stop(); 
         mp.release(); 
         mp = MediaPlayer.Create(....); 
         mp.start(); 
        } 
    } 
    
  3. 如果代替創建你決定使用prepareAsync(),請確保你不叫,製備後立刻開始,而是分配OnPreparedListener,並呼籲啓動它。

除了這一點,遵循MediaPlayer參考的準則。

+0

非常感謝您的回覆,您幫助我瞭解實例,但是..我不明白我如何爲ListView中的每個項目分配一個mp3。不幸的是,這不是像Visual這樣的事件驅動語言基本的,我只有16歲,我沒有經驗的Java,我現在試圖理解它 – rickrack 2012-02-13 11:54:22

+0

創建一個MP3的ID的數組,並根據視圖的索引設置適當的ID感動。 – MByD 2012-02-13 11:56:34

+0

順便說一句,android編程很像事件驅動的編程,使用監聽器。你也可以看看這裏:http://www.helloandroid.com/tutorials/musicdroid-audio-player-part-i – MByD 2012-02-13 11:58:42

0

檢查此link。您需要將代碼整合到您的listView.setOnItemSelectedListener()實施中的此鏈接中。