[英]Pause MediaPlayer when using a Map in android app
我正在使用地图构建具有大约40种声音的音板。 (上一个线程)
如果将应用程序移至后台(来电或类似内容),是否有人知道暂停Mediaplayer重启的好方法? 我在这方面还很新,所以可能很简单。 感谢任何可以提供帮助的人。
地图=新
HashMap();
map.put(R.id.button1,R.raw.sound1);
map.put(R.id.button2,R.raw.sound2);
...
然后迭代:
对于(Map.Entry条目:map.entrySet()){
final MediaPlayer sound = MediaPlayer.create(entry.getValue()); Button button = (ImageButton) findViewById(entry.getKey()); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { sound.start(); } });
}
覆盖Activity.onPause()
。 每当您的应用转到后台,“主页”按钮或“后退”按钮,来电或厄运的神奇雷云时,就会调用此方法。
我假设您不想一起播放所有声音,因此您可以在循环外部声明mediaplayer对象,然后您就不必知道正在播放哪个文件。 您可以使用sound.pause();
sound.stop();
或sound.reset();
(取决于您要执行的操作)我建议您查看android文档,以了解如何正确实施它。
如果要为我怀疑要使用的每个文件创建媒体播放器,请将媒体播放器保存在地图/列表中,并在onPause()
期间循环中暂停/重置它们。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.