2012-02-28 87 views
2

UPDATE:安卓:在用戶界面上顯示媒體音量滑塊

所以我用seekbar和SeekBar和掛鉤的聽衆

onCreate方法:

audio = (AudioManager) this.getSystemService(Context.AUDIO_SERVICE); 
volume_label.setText(String.valueOf(volume));*/ 
volumebar.setMax(audio.getStreamMaxVolume(AudioManager.STREAM_MUSIC)); 
volumebar.setProgress(60); 
volumebar.setOnSeekBarChangeListener(VolumeChange); 

this.setVolumeControlStream(AudioManager.STREAM_MUSIC); 


private OnSeekBarChangeListener VolumeChange = new OnSeekBarChangeListener() 
    { 
     public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) 
     { 
      int index = seekbar.getProgress(); 
      audio.setStreamVolume(AudioManager.STREAM_MUSIC, index, 1); 
      // volume_label.setText(String.valueOf(index)); 
     } 
     public void onStartTrackingTouch(SeekBar seekBar) 
     { 
      // 
     } 

     public void onStopTrackingTouch(SeekBar seekBar) 
     { 
      // 
     } 
    }; 

,但我可以使用搜索者但不影響音頻聲音,嘗試增加和減少聲音,但沒有效果,我還應該執行什麼?

更新的最終

我在具有播放/暫停/上一頁/下一頁/探尋一切按預期工作的MediaPlayer的工作,我打算添加volume slider使用戶可以改變音量,而不是使用硬件音量增大/減小按鈕。

我試過這段代碼,但沒有在用戶界面上顯示。

內onCreate方法:

Activity.setVolumeControlStream(AudioManager.STREAM_MUSIC) 

AudioManager audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE); 
audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, 40, AudioManager.FLAG_PLAY_SOUND); 
+0

看看這裏http://stackoverflow.com/questions/4178989/android-development-change-media-volume – 2012-02-28 19:49:02

回答

6

希望這有助於其他...這裏是我怎麼能夠實現:

leftAm = (AudioManager)getSystemService(Context.AUDIO_SERVICE); 
    int maxVolume = leftAm.getStreamMaxVolume(AudioManager.STREAM_MUSIC); 
    int curVolume = leftAm.getStreamVolume(AudioManager.STREAM_MUSIC); 
    SeekBar volControl = (SeekBar)findViewById(R.id.leftVolume); 
    volControl.setMax(maxVolume); 
    volControl.setProgress(curVolume); 
    volControl.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { 


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

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

    @Override 
    public void onProgressChanged(SeekBar arg0, int arg1, boolean arg2) { 
    // TODO Auto-generated method stub 
    leftAm.setStreamVolume(AudioManager.STREAM_MUSIC, arg1, 0); 
    } 
    }); 

的.xml:

<SeekBar 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:id="@+id/volumebar" 
      android:max="100" 
      android:paddingBottom="10dip"/> 
+0

非常感謝你.........非常感謝你......... – famfamfam 2015-10-26 08:44:18