美文网首页
android控制系统音量

android控制系统音量

作者: 心中有梦丶身边有你 | 来源:发表于2018-12-22 19:25 被阅读0次

xml

              <TextView
                    android:id="@+id/mVolume"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="音量"
                    android:textSize="18sp"/>
                <SeekBar
                    android:id="@+id/sound"
                    android:layout_width="400px"
                    android:layout_height="50dp"
                    android:layout_gravity="center"
                    android:max="100"
                    android:progress="10"
                    android:progressDrawable="@drawable/seekbar_style"
                    android:thumb="@drawable/thumb" />

Activity

    private TextView mVolume;  //显示当前音量
    public SeekBar soundBar;
    private int maxVolume, currentVolume;

        final SeekBar soundBar = (SeekBar) findViewById(R.id.sound);  //音量设置
        mVolume = (TextView) findViewById(R.id.mVolume);
        audiomanage = (AudioManager) getSystemService(Context.AUDIO_SERVICE);

        maxVolume = audiomanage.getStreamMaxVolume(AudioManager.STREAM_MUSIC);  //获取系统最大音量
        soundBar.setMax(maxVolume);   //拖动条最高值与系统最大声匹配
        currentVolume = audiomanage.getStreamVolume(AudioManager.STREAM_MUSIC);  //获取当前值
        soundBar.setProgress(currentVolume);
        mVolume.setText(currentVolume * 100 / maxVolume + " %");

        soundBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {//调音监听器
            public void onProgressChanged(SeekBar arg0, int progress, boolean fromUser) {
                audiomanage.setStreamVolume(AudioManager.STREAM_MUSIC, progress, 0);
                currentVolume = audiomanage.getStreamVolume(AudioManager.STREAM_MUSIC);  //获取当前值
                soundBar.setProgress(currentVolume);
                mVolume.setText(currentVolume * 100 / maxVolume + " %");
            }

            @Override
            public void onStartTrackingTouch(SeekBar seekBar) {
                // TODO Auto-generated method stub
            }

            @Override
            public void onStopTrackingTouch(SeekBar seekBar) {
                // TODO Auto-generated method stub
            }
        });

相关文章

网友评论

      本文标题:android控制系统音量

      本文链接:https://www.haomeiwen.com/subject/aglwkqtx.html