View Full Version : کنترل صدا
pouya1999best@g
پنج شنبه 19 تیر 1393, 05:15 صبح
با سلام؛
چجوری میشه با یک SeekBar صدای دستگاه را کم و زیاد کرد؟؟؟
در صورتی هم که از دکمه های سخت افزاری گوشی یا تبلت برای اینکار استفاده شد،موقعیت SeekBar با توجه به تغییرات صدا عوض شود.
اگر امکان دارد:این تغییر صدا فقط در اکتیویتی خاصی صورت بگیرد و در بقیه تمام گوشی تنظیمات تغییری نکند.
pouya1999best@g
پنج شنبه 19 تیر 1393, 18:00 عصر
کسی بلد نیست؟؟؟:گریه:
Programmatore
جمعه 20 تیر 1393, 14:13 عصر
از این تابع برای تنظیم صدا توسط seekbsr استفاده کن
private void initControls()
{
try
{
volumeSeekbar = (SeekBar)findViewById(R.id.volume_sek);
audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
volumeSeekbar.setMax(audioManager
.getStreamMaxVolume(AudioManager.STREAM_MUSIC));
volumeSeekbar.setProgress(audioManager
.getStreamVolume(AudioManager.STREAM_MUSIC));
volumeSeekbar.setOnSeekBarChangeListener(new OnSeekBarChangeListener()
{
@Override
public void onStopTrackingTouch(SeekBar arg0)
{
}
@Override
public void onStartTrackingTouch(SeekBar arg0)
{
}
@Override
public void onProgressChanged(SeekBar arg0, int progress, boolean arg2)
{
audioManager.setStreamVolume(AudioManager.STREAM_M USIC,
progress, 0);
}
});
}
catch (Exception e)
{
e.printStackTrace();
}
}
و این تابع هم برای ست کردن seekbar توسط کلیدهای فیزیکی
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_VOLUME_UP)
{
int index = volumeSeekbar.getProgress();
volumeSeekbar.setProgress(index + 1);
return true;
} else if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN)
{
int index = volumeSeekbar.getProgress();
volumeSeekbar.setProgress(index - 1);
return true;
}
return super.onKeyDown(keyCode, event);
}
این کد ها رو onCreate قرار بده
setVolumeControlStream(AudioManager.STREAM_MUSIC);
initControls();
ahmad_201494
چهارشنبه 23 مهر 1393, 05:28 صبح
setVolumeControlStream(AudioManager.STREAM_MUSIC);
initControls();
چکار میکنه؟
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.