미래를 쓰지 않고 오늘을 포함한 과거 날짜만 불러오려면 maxDate
를 사용하여 DatePicker에 최대 날짜를 설정했다!
생년월일 같이 미래 날짜가 필요 없을때 사용하면 좋다!
val calendar = Calendar.getInstance()
var selectedYear = calendar.get(Calendar.YEAR)
var selectedMonth = calendar.get(Calendar.MONTH)
var selectedDay = calendar.get(Calendar.DAY_OF_MONTH)
// 최대 날짜 설정
val maxDateCalendar = Calendar.getInstance()
maxDateCalendar.set(selectedYear, selectedMonth, selectedDay, 0, 0, 0)
datePicker.maxDate = maxDateCalendar.timeInMillis
만약 과거를 쓰지 않고 미래 날짜만 쓰고 싶다면 minDate
를 사용하여 아래와 같이 최소 날짜를 설정하면 된다!
val calendar = Calendar.getInstance()
var selectedYear = calendar.get(Calendar.YEAR)
var selectedMonth = calendar.get(Calendar.MONTH)
var selectedDay = calendar.get(Calendar.DAY_OF_MONTH)
// 최소 날짜 설정
val minDateCalendar = Calendar.getInstance()
minDateCalendar.set(selectedYear, selectedMonth, selectedDay, 0, 0, 0)
datePicker.minDate = minDateCalendar.timeInMillis
만약 일정 기간의 날짜만 사용하고 싶다면 최대 날짜와 최소 날짜 둘 다 써주면 된다!
최소 날짜를 오늘 날짜로, 최대날짜는 1년 후로 지정한 코드이다!
val calendar = Calendar.getInstance()
var selectedYear = calendar.get(Calendar.YEAR)
var selectedMonth = calendar.get(Calendar.MONTH)
var selectedDay = calendar.get(Calendar.DAY_OF_MONTH)
// 최소 날짜 설정
val minDateCalendar = Calendar.getInstance()
minDateCalendar.set(selectedYear, selectedMonth, selectedDay, 0, 0, 0)
datePicker.minDate = minDateCalendar.timeInMillis
// 최대 날짜 설정
val maxDateCalendar = Calendar.getInstance()
maxDateCalendar.set(selectedYear+1, selectedMonth, selectedDay, 0, 0, 0)
datePicker.maxDate = maxDateCalendar.timeInMillis
아래는 최소 날짜 설정, 최대 날짜 설정, 둘 다 설정한 코드를 순서대로 실행한 것이다.