android 滑动滚动条调节音量

利用滚动条滑动控制音量:

定义:

1 private SeekBar mseekBarvolume;

以下实现代码:

 1         //调节音量--begin-------------------------
 2         //音量控制,初始化定义    
 3         mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);        
 4         //取得最大音量    
 5         int maxVolume = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);    
 6         //取得当前音量    
 7         syscurrenvolume= mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC);            
 8         
 9         mseekBarvolume = (SeekBar) findViewById(R.id.seekBar_volume); 
10         // 进度条绑定最大音量,最大音量  
11         mseekBarvolume.setMax(maxVolume);
12         // 进度条绑定当前音量  
13         mseekBarvolume.setProgress(syscurrenvolume);         
14    
15         //调节音量事件
16         mseekBarvolume.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {  
17               
18             @Override  
19             public void onStopTrackingTouch(SeekBar seekBar) {  
20                 //移动后放开事件
21             }  
22   
23             @Override  
24             public void onStartTrackingTouch(SeekBar seekBar) {  
25                 // TODO Auto-generated method stub  
26             }  
27   
28             @Override  
29             public void onProgressChanged(SeekBar seekBar, int progress,  
30                     boolean fromUser) {  
31                 // TODO Auto-generated method stub  
32                 // 取得当前进度  
33                 int tmpInt = seekBar.getProgress();  
34   
35                 // 当进度小于1时,设置成1,防止太小。  
36                 if (tmpInt < 1) {  
37                     tmpInt = 1;  
38                 }  
39   
40                 // 根据当前进度改变亮度  
41                 mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, tmpInt, 0);                
42             }  
43         });        
44       //调节音量--end----------------
45         
47     }
48  

参考以下代码实现:

Android音量控制调节(转自:http://blog.csdn.net/hufeng882412/article/details/7310131)

1 //音量控制,初始化定义    
2 AudioManager mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);    
3 //最大音量    
4 int maxVolume = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);    
5 //当前音量    
6 int currentVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC); 

直接控制音量的多少:

1 if(isSilent){    
2   mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, 0, 0);    
3 }else{    
4   mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC, tempVolume, 0); //tempVolume:音量绝对值    
5 }  

以一步步长控制音量的增减,并弹出系统默认音量控制条:

 1 //降低音量,调出系统音量控制    
 2 if(flag == 0){    
 3   mAudioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,AudioManager.ADJUST_LOWER,    
 4                             AudioManager.FX_FOCUS_NAVIGATION_UP);    
 5 }    
 6 //增加音量,调出系统音量控制    
 7 else if(flag == 1){    
 8   mAudioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,AudioManager.ADJUST_RAISE,    
 9                             AudioManager.FX_FOCUS_NAVIGATION_UP);    
10 } 
原文地址:https://www.cnblogs.com/jenson138/p/4104965.html