0

ImageButton再生と一時停止のためのシンプルなsを備えた音楽プレーヤーのシンプルなアプリケーションを作成しようとしています。

試してみましたが、エミュレータから実行時に「残念ながらアプリケーションを開くことができません」というエラーが表示されます。

再生ボタンのコードだけで試してみましたが、一時停止ボタンのコードを追加すると実行時エラーが発生します。誰かが私がどこで間違っているのか教えてもらえますか?

ありがとうございました。

public class Audio1Activity extends Activity {

    private static final String TAG = "AudioDemo";
    private static final String isPlaying = "Media is Playing"; 
    private static final String notPlaying = "Media has stopped Playing"; 
    private MediaPlayer player;
    ImageButton playbtn,pausebtn;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        player= MediaPlayer.create(this , R.raw.a1);
        playbtn=(ImageButton) this.findViewById(R.id.image_button1);

        player.setLooping(false); 

        playbtn.setOnClickListener(new View.OnClickListener(){


        public void onClick(View v) {
            demoPlay();

        }
    });

    pausebtn.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            demoPause();
        }
    });  

    @Override
    public void onPause() {
        super.onPause();
        player.pause();
    }

    private void demoPause(){
        player.pause();
        Toast.makeText(this, notPlaying, Toast.LENGTH_LONG).show();
        Log.d(TAG, notPlaying);
    }

    private void demoPlay(){
        player.start();
        Toast.makeText(this, isPlaying, Toast.LENGTH_LONG).show();
        Log.d(TAG, isPlaying);
    }
}
4

2 に答える 2

0
player.prepare();

この行をplayer.start();の前に置いてみてください。

于 2012-07-25T18:07:24.617 に答える
0

エラーはpausebtnImageButtonウィジェットのを設定していないことです。

このような何かがそれを行う必要があります:

pausebtn = (ImageButton)findViewById(R.id.name_of_image_button_in_your_layout_xml);

if (pausebtn != null){
    pausebtn.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            demoPause();
        }
    });
}
于 2012-07-25T18:11:40.090 に答える