2015-10-16 3 views
0

Я использовал четыре искателя и поместил один за другим горизонтально. Теперь, если я начну изменять ход первого поискового бара, прогресс первой панели поиска должен измениться. И как только первый поисковый барабан достигнет хода 100, второй стартер должен начать изменение. Тот же поток применяется и для второго и третьего опорных балок.Как узнать, что искать, чтобы начать прослушивать setOnSeekBarChangeListener() в android?

Возможно ли это? Кто-нибудь может мне помочь ?

ответ

0

здесь быстрый фрагмент кода, если я сделал правильно понимаю ваш вопрос, то решение будет, как показано ниже:

 SeekBar seekBar = new SeekBar(this); 
     final SeekBar seekBar2 = new SeekBar(this); 
     seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { 
      @Override 
      public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { 
       if (progress >= 100) seekBar2.setProgress(progress); // do the same for the other seekbars. 
      } 

      @Override 
      public void onStartTrackingTouch(SeekBar seekBar) { 

      } 

      @Override 
      public void onStopTrackingTouch(SeekBar seekBar) { 

      } 
     }); 

как только первый SeekBar достигает 100, seekrBar2 изменит свой текущий прогресс, следующий за первым прогресс.
P.S это код фрагмента, вам может потребоваться следить за ним и соответствующим образом отражать ваш код.

0

Небольшое изменение в коде Коша :)

SeekBar seekBar1 = new SeekBar(this); 
SeekBar seekBar2 = new SeekBar(this); 
SeekBar seekBar3 = new SeekBar(this); 

seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { 
    @Override 
    public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { 
     if (progress > 100) seekBar2.setProgress(progress-100); // do the same for the other seekbars. 
    } 
}); 

seekBar2.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { 
    @Override 
    public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { 
     if (progress > 100) seekBar3.setProgress(progress-100); // do the same for the other seekbars. 
    } 
}); 

Это поможет вам :)