音量调节与静音

public class MainActivity extends Activity implements OnClickListener {
    private TextView tv;
    private MediaPlayer mediaPlayer=null; //播放器
    private AudioManager audioManager=null; //声音管理者
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.fragment_content2);
        Button btnLower=(Button) findViewById(R.id.btnLower);
        Button btnUpper=(Button) findViewById(R.id.btnUpper);
        Switch sw=(Switch) findViewById(R.id.switch1);
        btnLower.setOnClickListener(this);
        btnUpper.setOnClickListener(this);
        audioManager=(AudioManager)getSystemService(Service.AUDIO_SERVICE);
        sw.setOnCheckedChangeListener(new OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                //如果是选中状态就静音,默认为没有选中,如果是静音状态增加与降低音量都没有效果
                audioManager.setStreamMute(AudioManager.STREAM_MUSIC,isChecked); //设置是否静音
            }
        });
    }
    @Override
    public void onClick(View v) {
        switch (v.getId()) {
             case R.id.btnUpper://增多音量(静音状态按下没效果)
                 //adjustStreamVolume: 调整指定声音类型的音量
                 audioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC, 
                         AudioManager.ADJUST_RAISE, 
                         AudioManager.FLAG_SHOW_UI);    //调高声音
                 break;
             case R.id.btnLower://减少音量(静音状态按下没效果)
                 //第一个参数:声音类型
                 //第二个参数:调整音量的方向
                 //第三个参数:可选的标志位
                 audioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC, 
                         AudioManager.ADJUST_LOWER, 
                         AudioManager.FLAG_SHOW_UI);//调低声音
                 break;
        }
    }
}

布局文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
 
    <Switch
        android:id="@+id/switch1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textOn="打开状态静音"
        android:textOff="正常"
         android:textSize="30sp"
        android:text="音量设置 " />
    <Button android:id="@+id/btnUpper"
            android:text="增大音量" 
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />
    <Button android:id="@+id/btnLower"
            android:text="减小音量" 
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

</LinearLayout>

 

posted @ 2016-06-15 14:51  ts-android  阅读(687)  评论(0编辑  收藏  举报