Android 如何将侦听器添加到NumberPicker上的加号和减号按钮

Android 如何将侦听器添加到NumberPicker上的加号和减号按钮,android,numberpicker,Android,Numberpicker,如何将侦听器添加到NumberPicker上的加号和减号按钮 但是,我知道我使用它时遇到的问题是,每当您滚动选取器(而不是使用加号|减号按钮)时,列表中的每个项都会触发更改事件。我不能使用它,因为无论何时选择某个对象,我都会查询数据库&它会导致一个很小但明显的延迟 滚动侦听器 manufacturer.setOnScrollListener(new android.widget.NumberPicker.OnScrollListener() { @Override

如何将侦听器添加到NumberPicker上的加号和减号按钮

但是,我知道我使用它时遇到的问题是,每当您滚动选取器(而不是使用加号|减号按钮)时,列表中的每个项都会触发更改事件。我不能使用它,因为无论何时选择某个对象,我都会查询数据库&它会导致一个很小但明显的延迟

滚动侦听器

manufacturer.setOnScrollListener(new android.widget.NumberPicker.OnScrollListener() {
        @Override
        public void onScrollStateChange(android.widget.NumberPicker numberPicker, 
                int scrollState) {
            if (scrollState == android.widget.NumberPicker.OnScrollListener.SCROLL_STATE_IDLE) {
                ...
            }
        }
    });
值侦听器

manufacturer.setOnValueChangedListener(new android.widget.NumberPicker.OnValueChangeListener() {
        @Override
        public void onValueChange(NumberPicker picker, int oldVal, int newVal) {

            Log.e("app",""+newVal);
        }
    });

您甚至不应该使用实际上不存在的more/减号侦听器运行db查询。即使如此,我仍然想知道如何使用一个值侦听器,该值侦听器不会通过滚动项触发(或者至少有一个值侦听器会过滤出滚动引起的事件)。该
侦听器不存在,正如我之前所说的那样,您可以制作自己的日期选择器,或者您可以尝试覆盖现有的日期选择器,但我不认为覆盖它会让您添加所需的功能。如果按钮被单击会导致显示发生更改,onScrollListener不会被调用吗?不,它不是仅为滚动而触发的事件