Android实现音量调节的方法
作者:Ruthless 时间:2023-01-01 20:23:45
本文实例讲述了Android实现音量调节的方法。分享给大家供大家参考。具体如下:
main.xml布局文件:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<Button android:id="@+id/btnPlay"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="播放音乐" />
<LinearLayout android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal">
<ToggleButton android:id="@+id/tbMute"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textOn="静音"
android:textOff="正常"
android:checked="true"
android:layout_gravity="center_vertical" />
<Button android:id="@+id/btnUpper"
android:text="增大音量"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<Button android:id="@+id/btnLower"
android:text="减小音量"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
</LinearLayout>
AudioActivity类:
package com.ljq.activity;
import android.app.Activity;
import android.app.Service;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.CompoundButton;
import android.widget.ToggleButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
public class AudioActivity extends Activity {
private Button btnPlay=null, btnUpper=null, btnLower=null;
private ToggleButton tbMute=null;
private MediaPlayer mediaPlayer=null; //声频
private AudioManager audioManager=null; //音频
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
audioManager=(AudioManager)getSystemService(Service.AUDIO_SERVICE);
btnPlay=(Button)findViewById(R.id.btnPlay);
btnUpper=(Button)findViewById(R.id.btnUpper);
btnLower=(Button)findViewById(R.id.btnLower);
btnPlay.setOnClickListener(listener);
btnUpper.setOnClickListener(listener);
btnLower.setOnClickListener(listener);
tbMute=(ToggleButton)findViewById(R.id.tbMute);
tbMute.setOnCheckedChangeListener(new OnCheckedChangeListener(){
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
audioManager.setStreamMute(AudioManager.STREAM_MUSIC, !isChecked); //设置是否静音
}
});
}
View.OnClickListener listener=new View.OnClickListener(){
public void onClick(View v) {
@SuppressWarnings("unused")
Button btn=(Button)v;
switch (v.getId()) {
case R.id.btnPlay://播放音乐
mediaPlayer=MediaPlayer.create(AudioActivity.this, R.raw.music);
mediaPlayer.setLooping(true);//设置循环播放
mediaPlayer.start();//播放声音
break;
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;
}
}
};
}
运行结果:
希望本文所述对大家的Android程序设计有所帮助。
标签:Android,音量
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Java原生服务器接收上传文件 不使用MultipartFile类
2023-11-09 19:31:36
Android编程单选项框RadioGroup综合应用示例
2022-01-12 19:16:29
![](https://img.aspxhome.com/file/2023/4/87294_0s.jpg)
详解Java中的Lambda表达式
2021-08-17 00:06:00
![](https://img.aspxhome.com/file/2023/9/105919_0s.png)
Springboot 使用maven release插件执行版本管理及打包操作
2023-07-12 01:20:35
![](https://img.aspxhome.com/file/2023/8/64518_0s.png)
C#递归实现显示文件夹及所有文件并计算其大小的方法
2023-09-13 01:56:01
![](https://img.aspxhome.com/file/2023/1/84431_0s.png)
springboottest测试依赖和使用方式
2021-11-21 13:41:38
![](https://img.aspxhome.com/file/2023/7/74757_0s.png)
简单实现Java版学生管理系统
2022-06-22 15:16:19
SpringCloud @FeignClient参数的用法解析
2022-11-25 06:31:37
Spring Boot Logback配置日志过程解析
2022-12-09 18:08:06
Spring 容器初始化 register 与 refresh方法
2021-09-19 21:20:56
![](https://img.aspxhome.com/file/2023/1/98401_0s.png)
Java快速排序QuickSort(实例)
2021-12-22 21:47:42
![](https://img.aspxhome.com/file/2023/9/62769_0s.jpg)
springboot结合websocket聊天室实现私聊+群聊
2022-09-25 03:22:23
![](https://img.aspxhome.com/file/2023/9/67609_0s.jpg)
Android中生成、使用Json数据实例
2023-02-04 15:01:24
SpringCloud学习笔记之SpringCloud搭建父工程的过程图解
2022-10-28 02:38:30
![](https://img.aspxhome.com/file/2023/8/83578_0s.png)
Java手动实现Redis的LRU缓存机制
2023-07-31 12:51:30
![](https://img.aspxhome.com/file/2023/7/57807_0s.png)
Java Fluent Mybatis实战之构建项目与代码生成篇上
2022-06-10 00:10:33
![](https://img.aspxhome.com/file/2023/4/102654_0s.png)
C++实现图书管理系统
2023-11-03 03:00:35
聊聊Java的switch为什么不支持long
2023-08-24 17:35:14
Android Flutter实战之为照片添加颜色滤镜
2023-05-17 01:27:12
![](https://img.aspxhome.com/file/2023/2/130412_0s.png)
解读JSONArray删除元素的两种方式
2022-10-31 11:40:50