获取DatePickerDialog的取消按钮参考

时间:2018-09-21 16:44:49

标签: java android react-native

我正在尝试找到一种解决方法,以编程方式关闭Android时间选择器,因为它不支持隐藏功能,并且只有在用户点击CancelOk或小部件。是否可以通过文本找到按钮Cancel并以编程方式单击它?

1 个答案:

答案 0 :(得分:2)

您不需要按文本查找“取消”按钮。如果您使用的是DatePickerDialog或TimePickerDialog,则这些类将扩展AlertDialog类,因此您可以像这样简单地使用dialog.getButton函数:

 DatePickerDialog dialog = new DatePickerDialog(this,
                new DatePickerDialog.OnDateSetListener() {

                    @Override
                    public void onDateSet(DatePicker datePicker, int i, int i1, int i2) {

                    }
                });

        Button cancelButton = dialog.getButton(DialogInterface.BUTTON_NEUTRAL);
        cancelButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                // do whatever you want here
            }
        });

        // displays the DatePickerDialog
        dialog.show();