Как выбрать несколько дат в представлении календаря Android

    val calendar: Calendar = Calendar.getInstance()
    calendar.set(2022, 5, 10)
    val dateSelected = calendar.timeInMillis

    val calender2 = Calendar.getInstance()
    calender2.set(2022, 5, 11)
    val dateSelected2 = calender2.timeInMillis
    
    binding?.calenderView?.setDate(dateSelected, true, true)
    binding?.calenderView?.setDate(dateSelected2, true, true)

Я пытался выбрать две даты, как показано выше, но это не работает? Любая помощь?

Это не функция Android SDK CalendarView. Есть многие виджеты календаря, доступные от других разработчиков. Один или несколько из них могут предложить то, что вы ищете.

CommonsWare 11.05.2022 01:11
1
1
28
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Если вы просто хотите выбрать диапазон дат, попробуйте средство выбора даты материала документ выбора даты материала.

 MaterialDatePicker.Builder.dateRangePicker().build().show(supportFragmentManager, "")
Ответ принят как подходящий
            val dateRangePicker =
            MaterialDatePicker.Builder
                .dateRangePicker()
                .setTheme(R.style.ThemeOverlay_MaterialComponents_MaterialCalendar)
                .setTitleText("Title")
                .setSelection(
                    Pair(
                        MaterialDatePicker.thisMonthInUtcMilliseconds(),
                        MaterialDatePicker.todayInUtcMilliseconds()
                    )
                )
                .build()

        dateRangePicker.show(childFragmentManager, "tag")
        dateRangePicker.addOnPositiveButtonClickListener {
            println(it.first)
            println(it.second)

        }

Другие вопросы по теме