设置Android应用程序的音量

为了让用户控制音量,我的 Android应用程序有一个菜单,其中包含一个滑块,在拖动时提供从0到10的int值.在我获得一个值之后,我必须将音量设置为用户选择的相应值,而且,这是我不知道要实现的部分,我想找到它.

解决方法

使用 AudioManager类.基本上代码如下:
AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
audioManager.setStreamVolume(streamType,volume,flags);

问题是设备的体积不一定像滑块中那样从0到10映射.在我的模拟器上,它是从0到7.所以你需要做的是getStreamMaxVolume(…)来了解你的最大值,然后计算你的值作为其中的一小部分.例如,如果您的用户选择10个中的8个音量,则相当于0.8 * 7 = 5.6,您应该将其调整为7个中的6个.

“流”指的是诸如铃声音量,通知音量,音乐音量等等.如果您想要更改铃声的音量,您需要确保所有命令都将AudioManager.STREAM_RING作为streamType.

相关文章

Android 如何解决dialog弹出时无法捕捉Activity的back事件 在...
Android实现自定义带文字和图片的Button 在Android开发中经常...
Android 关于长按back键退出应用程序的实现最近在做一个Andr...
android自带的时间选择器只能精确到分,但是对于某些应用要求...