lundi 2 février 2015

How to disable my sound effect for all my button?

I have different buttons and each of them have their own sound effects. for enable my sound effect I used this class:


enter code here



public class Effects {
private static final String TAG = Effects.class.toString();

private static final Effects INSTANCE = new Effects();


public static final int SOUND_1 = 1;
public static final int SOUND_2 = 2;

private Effects() {

}

public static Effects getInstance() {
return INSTANCE;
}

private SoundPool soundPool;
private HashMap<Integer, Integer> soundPoolMap;
int priority = 1;
int no_loop = 0;
private int volume;
float normal_playback_rate = 1f;

private Context context;

public void init(Context context) {
this.context = context;
soundPool = new SoundPool(4, AudioManager.STREAM_MUSIC, 100);
soundPoolMap = new HashMap<Integer, Integer>();
soundPoolMap.put(SOUND_1, soundPool.load(context, R.raw.laser, 1));

AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
volume = audioManager.getStreamVolume(AudioManager.STREAM_SYSTEM);
}

public void playSound(int soundId) {
Log.i(TAG, "!!!!!!!!!!!!!! playSound_1 !!!!!!!!!!");
soundPool.play(soundId, volume, volume, priority, no_loop, normal_playback_rate);

}


then I identify this class in my activity in this way:



Effects.getInstance().init(this);


an then when I click my button , it works correcty.



Effects.getInstance().playSound(Effects.SOUND_1);


now I want another button to disable these sound effects. when I click my disable button to disable :



button(my button's name).setSoundEffectsEnabled(false);


it doesn't work at all. what's the problem?


Aucun commentaire:

Enregistrer un commentaire