【问题标题】:How to call different methods when min and max values are changed in range seek bar在范围搜索栏中更改最小值和最大值时如何调用不同的方法
【发布时间】:2017-08-22 11:01:58
【问题描述】:

我的应用中有一个范围搜索栏。我需要通过传递条形的最小值来调用一个方法,只有当值发生变化时,如果最大值发生变化,我还需要通过传递最大值来调用另一个方法。 到目前为止,这是我的代码。

rangeSeekbar.setOnRangeSeekBarChangeListener(new RangeSeekBar.OnRangeSeekBarChangeListener<Integer>() {
        @Override
        public void onRangeSeekBarValuesChanged(RangeSeekBar<?> bar, Integer minValue, Integer maxValue) {
                //call this if min value is changed
                mywebView.loadUrl("javascript:setStart(" + minValue.intValue() + ")");

                //call this if max value is changed
                mywebView.loadUrl("javascript:setEnd(" + maxValue.intValue() + ")");
            }

            Toast.makeText(getApplicationContext(), minValue + "-" + maxValue, Toast.LENGTH_LONG).show();
        }
    });

问题是当只有一个值改变时,两种方法都会被调用。如何区分方法调用? 欢迎任何想法。

【问题讨论】:

    标签: javascript android android-seekbar changelistener rangeseekbar


    【解决方案1】:

    您可以声明一个字段变量来保存您更改的值:

    int min ,max;
    rangeSeekbar.setOnRangeSeekBarChangeListener(new RangeSeekBar.OnRangeSeekBarChangeListener<Integer>() {
            @Override
            public void onRangeSeekBarValuesChanged(RangeSeekBar<?> bar, Integer minValue, Integer maxValue) {
                    if(minValue.intValue!=min){
                        //call this if min value is changed
                        mywebView.loadUrl("javascript:setStart(" + minValue.intValue() + ")");
                        min = minValue.intValue;
                    }
    
                    if(maxValue.intValue!=max){
                        //call this if max value is changed
                        mywebView.loadUrl("javascript:setStart(" + maxValue.intValue() + ")");
                        max = maxValue.intValue;
                    }    
    
            }
    
    });
    
    • 如果可以确认,您可以为minmax 分配默认值。

    【讨论】:

      猜你喜欢
      • 2014-01-12
      • 1970-01-01
      • 2021-07-04
      • 2012-08-02
      • 1970-01-01
      • 2014-03-22
      • 2014-11-03
      • 2015-05-18
      • 1970-01-01
      相关资源
      最近更新 更多