1

我的项目是一个音乐播放器,它有一个用于播放/暂停的 ToggleButton。

我试图在 Android Studio 中运行代码,但它意外地使应用程序崩溃。

我正在尝试跟进互联网上的一些教程和 YouTube 指南,但到目前为止没有任何效果。

这是我在 MainActivity 中运行的代码:

package com.example.hamzeh.playpausestop;

import android.media.MediaPlayer;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ToggleButton;

public class MainActivity extends AppCompatActivity {

    MediaPlayer Sound;
    int pause;

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

    public void stop(View view)
    {
        Sound.release();
    }

    public void onToggleClicked(View view)
    {
        boolean checked = ((ToggleButton)view).isChecked();

        if (checked)
        {
            Sound.start();
            //Play
        }
        else
        {
            Sound.pause();
            pause = Sound.getCurrentPosition();
            //Pause
        }

    }

}
4

1 回答 1

0

发布您的 logcat 结果,我将给出更好的答案,您的类没有任何声音对象的初始化,并检查 xml onClick 标记是否onToggleClickedstop定义。

public class MainActivity extends AppCompatActivity {

MediaPlayer Sound;
int pause;
//

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    // initialize Mediaplayer here for single sound
    Sound= MediaPlayer.create(MainActivity.this, R.raw.UrSoundFileInRawFolder);

}

public void stop(View view){
    Sound.release();
}

public void onToggleClicked(View view){
    boolean checked = ((ToggleButton)view).isChecked();

    if (checked && !Sound.isPlaying() && Sound!=null){
        Sound.start();
    }
    else if(Sound.isPlaying()){
           Sound.pause();
           pause = Sound.getCurrentPosition();
    } esle{
         Toast.makeText(MainActivity.this, "SomeThingWrong", Toast.LENGTH_SHORT).show();
    }
  }
}
于 2016-04-29T10:36:52.687 回答