【问题标题】:How to play MediaPlayer sound after a few seconds?几秒钟后如何播放 MediaPlayer 声音?
【发布时间】:2017-01-16 21:06:34
【问题描述】:

我有:

    player = MediaPlayer.create(this, R.raw.aurabroly);
    player.setLooping(false);
    player.setVolume(100,100);
    player.start();

如何在 5 秒后播放?

【问题讨论】:

    标签: android android-mediaplayer


    【解决方案1】:

    使用postDelayed 方法将其放入Handler

    例如

    new Handler().postDelayed(new Runnable() {
        @Override
        public void run(){
            // to run after 5 sec
        }
    }, 5 * 1000);
    

    【讨论】:

      【解决方案2】:

      例如:

          new Handler().postDelayed(new Runnable() {
              @Override
              public void run() {
                  player = MediaPlayer.create(YourActivity.this, R.raw.aurabroly);
                  player.setLooping(false);
                  player.setVolume(100, 100);
                  player.start();
              }
          }, 5000);
      

      但请记住,在 5 秒内情况可能会发生变化,例如您的活动被破坏,因此您需要在播放声音之前对其进行检查。

      【讨论】:

        【解决方案3】:
           player = MediaPlayer.create(this, R.raw.aurabroly);
           player.setLooping(false);
           player.setVolume(100,100);
        
           CountDownTimer timer = new CountDownTimer(6000,1000) {
        
                      @Override
                      public void onTick(long millisUntilFinished) {
        
                      }
        
                      @Override
                      public void onFinish() {
                         player.start();
                      }
            };
            timer.start();
        

        使用倒数计时器来延迟 5 秒,或者您可以使用处理程序 postdelayed

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-03-30
          • 2013-12-23
          • 2012-09-15
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多