Java 单击“停止”时媒体播放器出现问题
我今天一直在努力使我的按钮发出声音。 我想让按钮在您单击时播放声音,当您再次单击时停止播放声音 第一部分是工作,但我补充说Java 单击“停止”时媒体播放器出现问题,java,android,eclipse,media-player,Java,Android,Eclipse,Media Player,我今天一直在努力使我的按钮发出声音。 我想让按钮在您单击时播放声音,当您再次单击时停止播放声音 第一部分是工作,但我补充说 if(mpButtonClick1.isPlaying()) { mpButtonClick1.stop(); } else { mpButtonClick1.start(); } 自从我添加了那个部分,当我点击按钮时,什么也没发生。没有声音。 Eclipse没有向我显示任何错误。 这是我的活动 package com.example.splashzor;
if(mpButtonClick1.isPlaying())
{
mpButtonClick1.stop();
}
else
{
mpButtonClick1.start();
}
自从我添加了那个部分,当我点击按钮时,什么也没发生。没有声音。
Eclipse没有向我显示任何错误。
这是我的活动
package com.example.splashzor;
import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class Prvi extends Activity{
MediaPlayer mpButtonClick1;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.prvi);
final MediaPlayer mpButtonClick1 = MediaPlayer.create(this, R.raw.spalshm);
mpButtonClick1.isPlaying();
Button dugme = (Button) findViewById(R.id.dugme);
dugme.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
mpButtonClick1.start();
{
if(mpButtonClick1.isPlaying())
{
mpButtonClick1.stop();
}
else
{
mpButtonClick1.start();
}
}
}
});
}
}
如果您能告诉我我做错了什么以及如何修复它,我将不胜感激。删除
mpButtonClick1.start()代码>在if/else
块之前调用
否则,每当您单击按钮时,您总是先启动按钮,然后立即停止按钮,导致没有声音播放
逻辑应该是:
@Override
public void onClick(View v) {
if (mpButtonClick1.isPlaying()) {
mpButtonClick1.pause();
}
else {
mpButtonClick1.start();
}
}
编辑:同时将stop()
更改为pause()
。调用stop()
意味着它进入停止状态,并且在调用prepare()
删除mpButtonClick1.start()之前无法再次播放代码>在if/else
块之前调用
否则,每当您单击按钮时,您总是先启动按钮,然后立即停止按钮,导致没有声音播放
逻辑应该是:
@Override
public void onClick(View v) {
if (mpButtonClick1.isPlaying()) {
mpButtonClick1.pause();
}
else {
mpButtonClick1.start();
}
}
编辑:同时将stop()
更改为pause()
。调用stop()
意味着它进入停止状态,在调用prepare()
之前无法再次播放。我写了这个,但有一个问题。一旦我点击任何按钮,我就不能再播放任何声音,MP不会启动。我必须重新启动应用程序。我编辑了我的答案-您需要将stop()
调用更改为pause()
太棒了!谢谢你,muchI写了这封信,但有个问题。一旦我点击任何按钮,我就不能再播放任何声音,MP不会启动。我必须重新启动应用程序。我编辑了我的答案-您需要将stop()
调用更改为pause()
太棒了!多谢各位