Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在android studio上编码播放停止按钮_Android - Fatal编程技术网

如何在android studio上编码播放停止按钮

如何在android studio上编码播放停止按钮,android,Android,我需要一些关于下面代码的建议。我正在尝试创建一个简单的应用程序,当人们单击播放按钮时,音乐将开始播放,当人们单击停止按钮时,音乐将停止播放。我使用一个按钮来完成这两个任务开始和停止 我已经在android模拟器上进行了测试,这个启动和停止按钮可以正常工作。但问题发生在我构建一个APK文件并在设备上播放它时。停止按钮不能按我所希望的那样工作。如果我按下停止按钮,音乐将从头开始播放 对这个问题有什么想法吗?多谢各位 btn_playstop.setOnClickListener(new View.O

我需要一些关于下面代码的建议。我正在尝试创建一个简单的应用程序,当人们单击播放按钮时,音乐将开始播放,当人们单击停止按钮时,音乐将停止播放。我使用一个按钮来完成这两个任务开始和停止

我已经在android模拟器上进行了测试,这个启动和停止按钮可以正常工作。但问题发生在我构建一个APK文件并在设备上播放它时。停止按钮不能按我所希望的那样工作。如果我按下停止按钮,音乐将从头开始播放

对这个问题有什么想法吗?多谢各位

btn_playstop.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            if (btn_playstop.isPressed()) {
                if (player.isPlaying()) {
                    player.stop();
                    try {
                        player.prepare();
                    } catch (IllegalStateException e) {
                        e.printStackTrace();
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                    player.seekTo(0);
                    btn_playstop.setBackgroundResource(R.drawable.play);
                }
                else {
                    player.start();
                    btn_playstop.setBackgroundResource(R.drawable.stop);
                }
            }
        }
    });

要实现播放/停止按钮,请按此方式执行

btn_playstop.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        if (player != null && player.isPlaying()) {
            player.stop();
            player.release();
            player = null;
              try {
                 player.prepare();
              } catch (IllegalStateException e) {
                // TODO Auto-generated catch block
              e.printStackTrace();
              } catch (IOException e) {
                // TODO Auto-generated catch block
              e.printStackTrace();
              }
              player.seekTo(0);  //<---- This is to resume the player from a specified position. It is helpful for a pause button. You can remove it for a stop button.
              btn_playstop.setBackgroundResource(R.drawable.play);

         }
        else {              
            player.start();
                btn_playstop.setBackgroundResource(R.drawable.stop);
        }
     }   

});
btn_playstop.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
if(player!=null&&player.isPlaying()){
player.stop();
player.release();
player=null;
试一试{
player.prepare();
}捕获(非法状态){
//TODO自动生成的捕捉块
e、 printStackTrace();
}捕获(IOE异常){
//TODO自动生成的捕捉块
e、 printStackTrace();
}

播放器。seekTo(0);//谢谢您的帮助。但在我单击“停止”按钮后,音乐仍在播放。当我在模拟器上运行时,一切看起来都正常。但在设备上运行后,音乐仍在播放。请检查编辑后的答案。如果问题仍然存在于真实设备中,请尝试在其他设备中测试。我尝试了您的代码,但应用程序突然关闭因此,在此同时,我使用了“player.pause()”而不是“player.stop()”。谢谢。