0

我无法弄清楚如何管理打开/关闭音乐的切换按钮。当用户点击它时,它应该不断循环直到它被关闭。我正在使用 soundpool,如果有某种方式我可以通过使用有帮助的 soundpool 或媒体播放器检测我的媒体是否正在播放。但是我在文档中找不到任何相关的东西,类似的问题也没有很好的答案;如何判断声音是否仍在soundpool中播放

到目前为止我有这个:

final ToggleButton tglbuttn = (ToggleButton) findViewById(R.id.toggleButton1);

        final SoundPool mySp = new SoundPool(1, AudioManager.STREAM_MUSIC, 0);
        final int soundId = mySp.load(this, R.raw.music, 1);

        tglbuttn.setChecked(????????); //what could go here?
        tglbuttn.setOnClickListener(new View.OnClickListener() {

            public void onClick(View v) {


            }

如果我能以某种方式获得类似蓝牙切换开关的功能,但使用 soundpool/mediaplayer,一种将媒体播放的实际状态与切换按钮的状态联系起来的方法:

tglbtn.setChecked(myBluetooth.isEnabled());
4

1 回答 1

2

您可以使用isChecked方法来切换按钮。试试这个:

//Make your activity implements OnClickListener
public class MyActivity extends Activity implements OnClickListener {

然后:

//In your OnCreate()
tglbuttn.setOnClickListener(this);

最后:

//Add this method to your Activity
@Override 
public void onClick(View v) {
    if(v==tglbuttn) {
        if(v.isChecked())
            play();
        else                
            stop();
        tglbuttn.setChecked(!tglbuttn.isChecked()); //It will be toggled
     }
}
于 2012-08-12T03:00:56.607 回答