2017-02-22 52 views
0

所以我試圖製作一個播放聲音的按鈕,有一次它問我打開我想要在電腦上播放的聲音文件,我沒有真正看到它並點擊我的電腦,所以每次運行我的應用程序文件在我的電腦上播放,應用程序永遠不會啓動,任何人都知道我將如何重置? (嘗試一個新的項目,重新啓動)如何在Android Studio 2.2.3中重置MediaPlayer?

下面是我的一些代碼: MainActivity.java

package tech.mitchs.scarcesoundboard; 


import android.app.Activity; 
import android.media.MediaPlayer; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 

public class MainActivity extends Activity { 
    Button bt; 




    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     bt = (Button)findViewById(R.id.button1); 
     final MediaPlayer mp = MediaPlayer.create(this, R.raw.Hey_Guys); 
     bt.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       mp.start(); 
      } 
     }); 
    } 
} 

感謝您的幫助!

回答

0

MainActivity.java:

public class MainActivity extends AppCompatActivity { 

private MediaPlayer mediaPlayer; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    mediaPlayer = MediaPlayer.create(this, R.raw.diwali); 

    Button play = (Button) findViewById(R.id.play); 
    play.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      mediaPlayer.start(); 
      mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener(){ 
       @Override 
       public void onCompletion(MediaPlayer mp) { 
        Toast.makeText(MainActivity.this, "I'm done!", Toast.LENGTH_SHORT).show(); 
       } 

      }); 
     } 
    }); 

    Button pause = (Button) findViewById(R.id.pause); 
    pause.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      mediaPlayer.pause(); 
     } 
    }); 
} 

activity_main.xml中:

<Button 
    android:id="@+id/play" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="@string/play" /> 

<Button 
    android:id="@+id/pause" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="@string/pause" /> 

這爲我工作最好的,包括是連接媒體播放和暫停。

+0

問題是,每當我運行時,它會重置我所有的Rs。 「錯誤:錯誤:'H'不是有效的基於文件的資源名稱字符:基於文件的資源名稱只能包含小寫的az,0-9或下劃線」 https://mitchs.tech/i/ 858c1.png 我需要以某種方式重置它。 – Mitch

+0

請用小寫字母來定義資源名稱。這是您遇到錯誤的android命名約定。您已經定義了'R.raw.Hey_Guys',將其改爲'R.raw.hey_guys'。 –

+0

如果問題解決,請標記爲正確答案。謝謝! :) –