뷰모델에 birth라는 MutableLiveData 변수를 만들고 액티비티에서 datepicker로 선택한 날짜를 birth에 넘겨주게끔 만들었는데 화면 회전하면서 액티비티 재성성되면 뷰모델에 있는 다른 변수들은 멀쩡한데 birth만 자꾸 null로 초기화 되더라고.. 혹시 뭐가 문제인지 아는 사람?


Datepicker 불러오는 부분은 이렇게 짰음


val datePickerListener = object : DatePickerDialog.OnDateSetListener{
    override fun onDateSet(datePicker: DatePicker?, year: Int, month: Int, day: Int) {
        if(month < 10) {
            if(day < 10) {
                binding.model?.birth?.value = "${year}-0${month}-0${day}"
            }
            else {
                binding.model?.birth?.value = "${year}-0${month}-${day}"
            }
        }
        else {
            binding.model?.birth?.value = "${year}-${month}-${day}"
        }
    }
}
val datePickerDialog = DatePickerDialog(this, datePickerListener, calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH))
datePickerDialog.show()

화면회전하면서 액티비티 Destroy할 때 로그로 뷰모델에 있는 birth 찍어보면 그 때까진 데이터 들어있는데 다시 create될 때 찍어보면 null이야..


뭐가 문제일꽈..