发生这种情况可能有多种原因。以下是一些需要检查的事项:
按钮单击侦听器:确保您已为触发日期选择器对话框的按钮正确设置单击侦听器。确保将 calendarView() 函数分配给按钮的 setOnClickListener() 方法。
这是一个示例 // 在您的片段类中
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState)
val button = view.findViewById<Button>(R.id.button_date_picker) button.setOnClickListener {
calendarView() } }
private fun calendarView() { val materialDatePicker = MaterialDatePicker.Builder.dateRangePicker()
.setTitleText("Select date")
.setSelection(
androidx.core.util.Pair(
MaterialDatePicker.thisMonthInUtcMilliseconds(),
MaterialDatePicker.todayInUtcMilliseconds()
)
)
.setPositiveButtonText("Submit")
.build()
materialDatePicker.addOnPositiveButtonClickListener { pair ->
val simpleDateFormat = SimpleDateFormat("EEEE, dd MMMM yyyy", Locale.getDefault())
val startingDate = Date(pair.first)
val startDate = simpleDateFormat.format(startingDate)
val endingDate = Date(pair.second)
val endDate = simpleDateFormat.format(endingDate)
Toast.makeText(requireContext(), "Submitted", Toast.LENGTH_SHORT).show()
Log.d("date---->>", "${startDate.toString()} ${endDate.toString()}")
// dateTextView.text = "$f
ormattedStartDate 直到 $formattedEndDate" } materialDatePicker.show(requireFragmentManager(),materialDatePicker.toString()) }
确保您的片段布局 XML 文件包含 ID 为“button_date_picker”的按钮。如果所有这些步骤都正确并且问题仍然存在,您可能需要提供更多详细信息。