自定义日期时间选择器不工作 - Android

Custom datetime picker not working - Android

我正在为 android 应用程序使用自定义 datetimepicker
我将依赖项安装为:

implementation 'com.github.noowenz:CustomDateTimePicker:1.01'

然后我在我的activity中添加如下:

final static String TAG = BookcabActivity.class.getCanonicalName();
Calendar selectedDateAndTime = Calendar.getInstance();
mTextViewOne = findViewById(R.id.et_datetime);
        mTextViewOne.setFocusable(false);
        mTextViewOne.setOnClickListener(view -> {
            show_Datepicker();
        });
private void show_Datepicker() {
        new CustomDateTimePicker(this, new CustomDateTimePicker.ICustomDateTimeListener() {
            @Override
            public void onSet(@NotNull Dialog dialog, @NotNull Calendar calendar,
                              @NotNull Date date, int year, @NotNull String monthFullName,
                              @NotNull String monthShortName, int monthNumber, int day,
                              @NotNull String weekDayFullName, @NotNull String weekDayShortName,
                              int hour24, int hour12, int min, int sec, @NotNull String AM_PM) {
                Toast.makeText(ctx, "Date and time selected!", Toast.LENGTH_SHORT).show();
                selectedDateAndTime = calendar;
                String dateAndTime = "Date is" + date + "Year is" + year + "Day is" + day;
                Log.d(TAG, "onSet: Date is" + dateAndTime);
                mTextViewOne.setText(dateAndTime);
            }

            @Override
            public void onCancel() {
                Toast.makeText(ctx, "Date and Time selection is cancelled", Toast.LENGTH_SHORT).show();
            }
        });

    }  

但是日期时间对话框没有弹出,我错过了什么?

您缺少 .showDialog()

试试这个:

private void show_Datepicker() {
        new CustomDateTimePicker(this, new CustomDateTimePicker.ICustomDateTimeListener() {
            @Override
            public void onSet(@NotNull Dialog dialog, @NotNull Calendar calendar,
                              @NotNull Date date, int year, @NotNull String monthFullName,
                              @NotNull String monthShortName, int monthNumber, int day,
                              @NotNull String weekDayFullName, @NotNull String weekDayShortName,
                              int hour24, int hour12, int min, int sec, @NotNull String AM_PM) {
                Toast.makeText(ctx, "Date and time selected!", Toast.LENGTH_SHORT).show();
                selectedDateAndTime = calendar;
                String dateAndTime = "Date is" + date + "Year is" + year + "Day is" + day;
                Log.d(TAG, "onSet: Date is" + dateAndTime);
                mTextViewOne.setText(dateAndTime);
            }

            @Override
            public void onCancel() {
                Toast.makeText(ctx, "Date and Time selection is cancelled", Toast.LENGTH_SHORT).show();
            }
        }).showDialog();

    }