简体   繁体   English

如何使号码选择器不可取消?

[英]How to make number picker not cancelable?

How to make number picker in Android not cancelable?如何使Android中的数字选择器不可取消? This my code:这是我的代码:

public static class NumberPickerDialog extends DialogFragment
{
    private NumberPicker.OnValueChangeListener valueChangeListener;
    int min, max, current;
    String title;

    NumberPickerDialog(int min, int max, String title, int current)
    {
        this.min = min;
        this.max = max;
        this.title = title;
        this.current = current;
    }

    @NonNull
    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState)
    {

        final NumberPicker numberPicker = new NumberPicker(getActivity());

        numberPicker.setMinValue(min);
        numberPicker.setMaxValue(max);
        numberPicker.setValue(current);
        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
        builder.setTitle(title);
        builder.setCancelable(false); //this doesn't work
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener()
        {
            @Override
            public void onClick(DialogInterface dialog, int which)
            {
                valueChangeListener.onValueChange(numberPicker,
                        numberPicker.getValue(), numberPicker.getValue());
            }
        });


        builder.setView(numberPicker);
        return builder.create();
    }

    void setValueChangeListener(NumberPicker.OnValueChangeListener valueChangeListener)
    {
        this.valueChangeListener = valueChangeListener;
    }
}

How to set this dialog always active as long as the user doesn't pick a number?只要用户不选择数字,如何设置此对话框始终处于活动状态? Cancellable options works in other formats but not in number picker.可取消选项适用于其他格式,但不适用于数字选择器。 Is problem with component?组件有问题吗?

new NumberPickerDialog().setCancelable(false);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM