如果振铃音量发生变化,如何切换开关?

时间:2017-01-21 03:59:51

标签: java android volume android-audiomanager

我想要在启动应用程序时获得最大音量,所以我在onCreate中获得了LastStreamMaxVolume。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    swVolume = (Switch) findViewById(R.id.switch1);     
    AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
    int vol = am.getStreamVolume(AudioManager.STREAM_RING);
    int maxVol = am.getStreamMaxVolume(AudioManager.STREAM_RING);
    am.setStreamVolume(
            AudioManager.STREAM_RING,
            am.getStreamMaxVolume(AudioManager.STREAM_RING),
            0); 

然后我想要在音量达到最大值

时打开开关
    if(vol == maxVol){
        swVolume.setChecked(true);

    }

并在音量不是最大时关闭

    if(vol < maxVol){
            swVolume.setChecked(false);
      }
    else {
            swVolume.setChecked(false);
      }     

有人可以向我解释为什么代码不起作用?有没有办法使它工作?

0 个答案:

没有答案