コード例 #1
0
 public SeekBarVolumizer(
     SeekBar seekBar, IVolumizerStrategy volumizerStrategy, IVolumizerMaster volumizerMaster) {
   mSeekBar = seekBar;
   this.volumizerStrategy = volumizerStrategy;
   this.volumizerMaster = volumizerMaster;
   seekBar.setMax(volumizerStrategy.getMaxVolume());
   seekBar.setProgress(volumizerStrategy.getVolume());
   seekBar.setOnSeekBarChangeListener(this);
 }
コード例 #2
0
 public void muteVolume() {
   if (mVolumeBeforeMute != -1) {
     mSeekBar.setProgress(mVolumeBeforeMute);
     startSample();
     volumizerStrategy.setVolume(mVolumeBeforeMute);
     mVolumeBeforeMute = -1;
   } else {
     mVolumeBeforeMute = mSeekBar.getProgress();
     mSeekBar.setProgress(0);
     volumizerStrategy.stopSample();
     volumizerStrategy.setVolume(0);
   }
 }
コード例 #3
0
 private void startSample() {
   volumizerMaster.onSampleStarting(this);
   volumizerStrategy.startSample();
 }
コード例 #4
0
 public void stopSample() {
   volumizerStrategy.stopSample();
 }
コード例 #5
0
 public void changeVolumeBy(int amount) {
   mSeekBar.incrementProgressBy(amount);
   startSample();
   volumizerStrategy.setVolume(mSeekBar.getProgress());
   mVolumeBeforeMute = -1;
 }
コード例 #6
0
    @Override
    public void onProgressChanged(SeekBar seekBar, int progress, boolean fromTouch) {
      if (!fromTouch) return;

      volumizerStrategy.setVolume(progress);
    }