一个seekBar的移动会影响其他seekBar

时间:2016-07-08 19:50:23

标签: java android android-studio android-widget

我的应用程序界面中有5个seekBar小部件,总预算为#34;用户可以初始化的editText小部件。 我想实现移动一个seekBar以影响另一个seekBar以影响另一个方向受限于"总预算"的影响。 如何实现这种影响,是否可以使seekBars同时移动?

1 个答案:

答案 0 :(得分:1)

您可以使用SeekBar.OnSeekBarChangeListener。 对于每个搜索栏,您需要设置此侦听器并更新其他搜索栏'类似于onProgressChanged(SeekBar seekBar, int progress, boolean fromUser)方法的值:

    seekBar1.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
        @Override
        public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
            if(fromUser){
                // update other seekbars' value
                seekBar2.setProgress();
                seekBar3.setProgress();
                seekBar4.setProgress();
            }
        }

        @Override
        public void onStartTrackingTouch(SeekBar seekBar) {

        }

        @Override
        public void onStopTrackingTouch(SeekBar seekBar) {

        }
    });

    seekBar2.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
        @Override
        public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
            if(fromUser){
                // update other seekbars' value
                seekBar1.setProgress();
                seekBar3.setProgress();
                seekBar4.setProgress();
            }
        }

        @Override
        public void onStartTrackingTouch(SeekBar seekBar) {

        }

        @Override
        public void onStopTrackingTouch(SeekBar seekBar) {

        }
    });