如何禁用材料日期范围选择器中的日期范围?

问题描述 投票:0回答:1

这里我有一个

DateRangePicker
使用 材质库

 val dateRangePicker =
                    MaterialDatePicker.Builder.dateRangePicker()
                    .setTitleText(getString(R.string.calendar_select_dates))
                    .setSelection(...)
                    .build()

如何设置 minDate 和 maxDate 以显示 minDate 之间的唯一范围<...

这里是设置最小和最大日期以限制两个日期之间的日期选择器的示例代码。

 private fun showDatePickerDialog() {

        val constraintsBuilder = CalendarConstraints.Builder()

        // Set the minimum selectable date to a specific date (e.g., January 1, 2000).
        val calendar = Calendar.getInstance()
        val min = calendar.timeInMillis
        constraintsBuilder.setStart(min)

        calendar.add(Calendar.DAY_OF_MONTH, 10)
        val max = calendar.timeInMillis
        constraintsBuilder.setEnd(max)

        val listValidators =
            arrayListOf(DateValidatorPointForward.from(min), DateValidatorPointBackward.before(max))
        constraintsBuilder.setValidator(CompositeDateValidator.allOf(listValidators))

        val datePickerBuilder = MaterialDatePicker.Builder.datePicker().apply {
            setTitleText(getString(R.string.app_name))
            setCalendarConstraints(constraintsBuilder.build())
            // Set the initial date to the current date
            val currentTimeMillis = Calendar.getInstance().timeInMillis
            setSelection(currentTimeMillis)
            setInputMode(MaterialDatePicker.INPUT_MODE_CALENDAR)
        }
        val datePicker = datePickerBuilder.build()
        datePicker.addOnPositiveButtonClickListener { selection ->
            // Get selected date
        }
        // Don't forget to show the dialog
        datePicker.show(supportFragmentManager, "datePicker")
    }
android kotlin material-ui datepicker
1个回答
0
投票
© www.soinside.com 2019 - 2024. All rights reserved.