【发布时间】: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
我有:
player = MediaPlayer.create(this, R.raw.aurabroly);
player.setLooping(false);
player.setVolume(100,100);
player.start();
如何在 5 秒后播放?
【问题讨论】:
标签: android android-mediaplayer
使用postDelayed 方法将其放入Handler。
例如
new Handler().postDelayed(new Runnable() {
@Override
public void run(){
// to run after 5 sec
}
}, 5 * 1000);
【讨论】:
例如:
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 秒内情况可能会发生变化,例如您的活动被破坏,因此您需要在播放声音之前对其进行检查。
【讨论】:
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
【讨论】: