2013-04-04 28 views
-2

通過使用onItemClick和條件我匹配字符串數組與原始文件夾MP3文件我想通過點擊列表視圖歌曲我需要在其他活動通過調用只是該mplay方法播放歌曲。請幫助我....如果條件在Android

public void onItemClick(AdapterView<?> parent, View view, int position,long id) 
{  
    Intent intent = new Intent(this, Play.class); 
    startActivity(intent); 

    MediaPlayer mPlayer2; 
    MediaPlayer mPlayer3; 




    if(position==0) 
    { 
     public void mplay() **<--------- I Get error in this Line** 
        { 
     mPlayer2= MediaPlayer.create(this, R.raw.gayatri); 
     mPlayer2.start(); 
        } 

    } 
+1

這是一個語法錯誤。您不能在常規代碼塊中聲明方法。也許學習JAVA語言教程? – 2013-04-04 06:41:34

+0

在另一個Activity中調用一個方法只是:'Play.this.mplay()'並且該方法必須退出該活動 – tttony 2013-04-04 06:43:33

回答

0

你要打電話mplay(),不是創造mpaly()中,如果條件

public void onItemClick(AdapterView<?> parent, View view, int position,long id) 
{  
    Intent intent = new Intent(this, Play.class); 
    startActivity(intent); 

    MediaPlayer mPlayer2; 
    MediaPlayer mPlayer3; 

    if(position==0) 
    { 
     mplay(); 
     //or mplay(R.raw.gayatri); 
    } 


} 

public void mplay() 
        { 
     mPlayer2= MediaPlayer.create(activity.this, R.raw.gayatri); 
     mPlayer2.start(); 
        } 



    public void mplay(int id) 
         { 
      mPlayer2= MediaPlayer.create(activity.this, id); 
      mPlayer2.start(); 
         } 
+0

我可以在一個活動中創建mplay()並在另一個活動中聲明mplay方法 – Pramoth 2013-04-04 06:44:19

+0

yes。在任何文件中創建mpalay(),或者在對象的幫助下調用 – 2013-04-04 06:45:36

+0

我需要通過這種方法播放近150個任何特殊方法,通過單擊列表視圖播放150個歌曲的歌曲 – Pramoth 2013-04-04 08:58:45

0

在Java中,你不能做這樣的事情,但你可以返回一個只包含一個方法的匿名類的實例。

0

在項目點擊

if(position==0) 
{ 
    mplay(); 
} 

在您的活動定義方法mplay()

 public void mplay() 
     { 

     //do something 
     } 
+0

我需要通過這種方法播放近150個任何特殊的方法,通過點擊列表視圖從原始文件夾播放150首歌曲 – Pramoth 2013-04-04 08:59:34