【问题标题】:Change Button icon on click play and pause单击播放和暂停时更改按钮图标
【发布时间】:2020-03-25 02:33:05
【问题描述】:

我想用播放和暂停按钮将 mp3 文件添加到我的应用程序中,目前我正在使用播放和暂停图标,但我想分别显示播放和暂停按钮,比如当用户点击播放按钮时,暂停图标应该显示,反之亦然反之亦然,这是我播放文件的代码

Button play;
play = (Button) findViewById(R.id.play);
play.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        if (mp != null && mp.isPlaying()) {
            mp.pause();
            length = mp.getCurrentPosition();
        } else {
            mp = MediaPlayer.create(PunjabiActivity.this, R.raw.japji);
            mp.seekTo((int) length);
            mp.start();
        }
    }
});

【问题讨论】:

    标签: android android-studio button icons


    【解决方案1】:

    你应该在布局和代码中用 ImageButton 替换你的 Button,然后在调用 mp.pause();和 mp.start();你应该分别做: play.setImageResource(R.drawable.yourPlayIcon)play.setImageResource(R.drawable.yourPauseIcon)

    【讨论】:

      【解决方案2】:
      play.setImageResource(R.drawable.playIcon);
      play.setOnClickListener(new View.OnClickListener() {
          @Override
          public void onClick(View v) {
              if (mp != null && mp.isPlaying()) {
                  mp.pause();
                  length = mp.getCurrentPosition();
                  play.setImageResource(R.drawable.pauseIcon)
              } else {
                  mp = MediaPlayer.create(PunjabiActivity.this, R.raw.japji);
                  mp.seekTo((int) length);
                  mp.start();
                  play.setImageResource(R.drawable.playIcon)
              }
          }
      });
      

      【讨论】:

      • 它正在工作,但两个图标都显示在默认图标之上,我的意思是我在 xml 文件中设置的图标没有隐藏
      • 好的,那就不要在 xml 中设置它。在 onClickListener() 上方的 oncreate() 中以编程方式设置图标
      • 为我检查更新的答案,我的工作方式相同
      • 它有效 :) 我可以更改图标的大小吗?当我在 xml 中更改它时不起作用
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多