【问题标题】:Change Button when Audio is finished Android音频完成后更改按钮 Android
【发布时间】:2025-12-02 09:00:02
【问题描述】:

我正在使用 Android Studio 制作应用,并且我的应用中有一个 mp3 文件。我在其中添加了一个播放和暂停按钮,但我的问题是,当我单击播放按钮时,会显示暂停按钮,但是当 mp3 文件播放完毕时,仍然会显示暂停按钮。我希望它在音频完成后再次自动更改为播放按钮。这是我的代码:

  play.setImageResource(R.drawable.play);
    play.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            if (mp != null && mp.isPlaying()) {
                mp.pause();
                play.setImageResource(R.drawable.play);
                length = mp.getCurrentPosition();


            } else {

                mp.seekTo((int) length);
                mp.start();
                play.setImageResource(R.drawable.pause);

【问题讨论】:

    标签: android android-studio media-player


    【解决方案1】:

    你可以使用 setOnCompletionListener;

    mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
                        @Override
                        public void onCompletion(MediaPlayer mediaPlayer) {
                            // Do something when media player end playing
                            play.setImageResource(R.drawable.play);
                        }
                    });
    

    【讨论】:

      【解决方案2】:

      尝试创建两个而不是使用一个按钮 - 播放和暂停...(我假设您已经在使用 Relativelayout)然后使用 pause.setVisibility(View.GONE)play.setVisibility(View.VISIBLE)

      【讨论】: