大佬教程收集整理的这篇文章主要介绍了在播放另一种声音之前,Android SoundPool第二次播放的声音不同,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
public class MainActivity extends AppCompatActivity { private SoundPool soundPool; @Override protected void onCreate(Bundle savedInstanceStatE) { super.onCreate(savedInstanceStatE); setContentView(R.layout.activity_main); setVolumeControlStream(Au@L_340_0@manager.STREAM_MUSIC); soundPool = new SoundPool(5,Au@L_340_0@manager.STREAM_MUSIC,0); final int sound1 = soundPool.load(this,R.raw.whack,1); final int sound2 = soundPool.load(this,R.raw.miss,1); Button b1 = (Button) findViewById(R.id.b1); Button b2 = (Button) findViewById(R.id.b2); b1.setOnClickListener(new View.onClickListener() { @Override public void onClick(View view) { playSound(sound1); } }); b2.setOnClickListener(new View.onClickListener() { @Override public void onClick(View view) { playSound(sound2); } }); } private void playSound(int soundId) { Au@L_340_0@manager au@L_340_0@manager = (Au@L_340_0@manager) getSystemservice(Context.AUdio_serviCE); float volume = au@L_340_0@manager.getStreamVolume(Au@L_340_0@manager.STREAM_MUSIC); soundPool.play(soundId,volume,1,1); } }
问题是当我点击Button1时,播放了sound1.然后当我一次又一次地点击Button1时,在我点击Button2之前什么也没有播放.当我这样做时,播放声音2.然后,如果我点击Button1,则播放sound1.当我一遍又一遍地点击Button2时会发生同样的情况.那么这里的问题是什么?
public static void playAudio(Context context,SoundPool player,int soundId,float speed){ Au@L_340_0@manager mgr = (Au@L_340_0@manager) context.getSystemservice(Context.AUdio_serviCE); float actualVolume=(float) mgr.getStreamVolume(Au@L_340_0@manager.STREAM_MUSIC); float maxVolume=(float) mgr.getStreAMMaxVolume(Au@L_340_0@manager.STREAM_MUSIC); float volume= actualVolume/maxVolume; player.play(soundId,speed); }
以上是大佬教程为你收集整理的在播放另一种声音之前,Android SoundPool第二次播放的声音不同全部内容,希望文章能够帮你解决在播放另一种声音之前,Android SoundPool第二次播放的声音不同所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。