gpt4 book ai didi

android - SoundPool 听起来没有变化

转载 作者:行者123 更新时间:2023-11-29 22:32:15 29 4
gpt4 key购买 nike

我有一个 soundpool 对象和几个声音,但是一旦创建我就无法改变声音播放,例如循环次数、音量、停止等。

声明代码:

public SoundPool sounds;
public HashMap<Integer, Integer> soundmap = new HashMap<Integer, Integer>();
static final public int UFO=3;
static final public int PlayerDeath=3;
static final public int InvaderDeath=2;
static final public int PlayerFire=1;

声音分配代码:

sounds = new SoundPool(10,AudioManager.STREAM_MUSIC,0);
soundmap.put(PlayerDeath,sounds.load(getContext(), R.raw.explosion, 1));
soundmap.put(InvaderDeath,sounds.load(getContext(), R.raw.invaderkilled, 1));
soundmap.put(PlayerFire,sounds.load(getContext(),R.raw.shoot, 1));
soundmap.put(UFO,sounds.load(getContext(),R.raw.ufo, 1));

开始/停止代码:

public void PlayUFOMusic()
{
sounds.play(soundmap.get(UFO),0.8F,0.8F,1,2000,1);
}

public void StopUFOMusic()
{
sounds.stop(soundmap.get(UFO));
}

我知道正在调用这些函数,但无论如何都不会导致它发生变化。我也试过 setLoop、setVolume、pause 和 unload,这些都没有用。

有什么想法吗?

最佳答案

这是 play() 语法:

public final int  play  (int soundID, float leftVolume, float rightVolume, int priority, int loop, float rate)

所以不应该是:

 sounds.play(soundmap.get(UFO),0.8F,0.8F,1,-1, 1);

让声音永远循环播放?

编辑:请稍微快点阅读问题,但如果您使用此播放功能,它会循环播放吗?

关于android - SoundPool 听起来没有变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3595946/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com