Code for Date Picker: (Here I have open date picker on click event of Button)
datePicker.setOnClickListener(v -> {
MaterialDatePicker datePicker =
MaterialDatePicker.Builder.datePicker()
.setTitleText("Select date")
.build();
datePicker.show(getSupportFragmentManager(), "date");
datePicker.addOnPositiveButtonClickListener((MaterialPickerOnPositiveButtonClickListener<Long>) selection -> {
String dateString = DateFormat.format("dd/MM/yyyy", new Date(selection)).toString();
Toast.makeText(this, dateString, Toast.LENGTH_SHORT).show();
});
});
Code for Date Range Picker: (Here I have open date range picker on click event of Button)
dateRangePicker.setOnClickListener(v -> {
MaterialDatePicker datePicker =
MaterialDatePicker.Builder.dateRangePicker()
.setSelection(new Pair(MaterialDatePicker.thisMonthInUtcMilliseconds(),
MaterialDatePicker.todayInUtcMilliseconds()))
.setTitleText("Select dates")
.build();
datePicker.show(getSupportFragmentManager(), "date");
datePicker.addOnPositiveButtonClickListener((MaterialPickerOnPositiveButtonClickListener<Pair<Long, Long>>) selection -> {
Long startDate = selection.first;
Long endDate = selection.second;
String startDateString = DateFormat.format("dd/MM/yyyy", new Date(startDate)).toString();
String endDateString = DateFormat.format("dd/MM/yyyy", new Date(endDate)).toString();
String date = "Start: " + startDateString + " End: " + endDateString;
Toast.makeText(TextViewActivity.this, date, Toast.LENGTH_SHORT).show();
});
});
Code for Time Picker: (Here I have open time picker on click event of Button)
timePicker.setOnClickListener(v -> {
MaterialTimePicker timePicker = new MaterialTimePicker.Builder()
.setTimeFormat(TimeFormat.CLOCK_12H)
.setHour(12)
.setTitleText("Select Appointment time")
.setMinute(10)
.build();
timePicker.show(getSupportFragmentManager(), "time");
timePicker.addOnPositiveButtonClickListener(v12 -> {
int hour = timePicker.getHour();
int min = timePicker.getMinute();
Toast.makeText(TextViewActivity.this, "Time is: " + hour + ":" + min, Toast.LENGTH_SHORT).show();
});
timePicker.addOnNegativeButtonClickListener(v13 -> Toast.makeText(TextViewActivity.this, "Cancel", Toast.LENGTH_SHORT).show());
});