2010-03-29 20 views
6

Kullanıcının sesi kontrol etmesi için, android uygulamamın sürüklendiğinde 0 ile 10 arasında int değerleri sağlayan bir kaydırıcıdan oluşan bir menüsü vardır. Bir değer elde ettikten sonra, birimi kullanıcı tarafından seçilen karşılık gelen değere ayarlamalıyım ve iyi, bu benim uygulamamı bildiğim kısım ve ben de onu bulmak istiyorum.Bir android uygulamasının hacmini ayarlama

cevap

11

AudioManager sınıfını kullanın. Esasen şöyle Şifrenin:

AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); 
audioManager.setStreamVolume(streamType, volume, flags); 

sorun size kaydırıcı sahip olarak cihazın ses mutlaka 0 ile 10 arasında eşlenmedi olmasıdır. Benim emülatörümde, 0'dan 7'ye kadar. Yapmanız gereken şey, max'inizin ne olduğunu bilmek için getStreamMaxVolume(...) olduğunu ve değerinizin bir kesir olarak çalıştığını. Örnek olarak, kullanıcı 10'dan 8'ini seçerse, bu 0,8 * 7 = 5,6'ya eşdeğerdir. Bu, 7'den 6'ya kadar yuvarlamanız gerekir.

"Akış" zil sesi düzeyi, bildirim sesi gibi şeyleri ifade eder. zil sesi seviyesini değiştirmek isterseniz, tüm komutlarınızın streamType olarak AudioManager.STREAM_RING olduğundan emin olmalısınız.

İlgili konular