I have a edittext and when I click tthat, I want to show a DatePicker,
This is what I tried but I get an error
android.view.WindowManager$BadTokenException: Unable to add window -- token null is not valid; is your activity running?
class AddProductViewModel (
private val repository: ProductRepository,
private val context: Context
): ViewModel(), Observable {
val myCalendar = Calendar.getInstance()
var date =
OnDateSetListener { view, year, monthOfYear, dayOfMonth ->
myCalendar.set(Calendar.YEAR, year)
myCalendar.set(Calendar.MONTH, monthOfYear)
myCalendar.set(Calendar.DAY_OF_MONTH, dayOfMonth)
//updateLabel()
}
fun showStartDateDatePicker() {
Toast.makeText(context, "showStartDateDatePicker", Toast.LENGTH_LONG).show()
DatePickerDialog(
context, date, myCalendar[Calendar.YEAR], myCalendar[Calendar.MONTH],
myCalendar[Calendar.DAY_OF_MONTH]
).show()
}
}
Edit text
<EditText
android:id="@+id/etStartDate"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginTop="36dp"
android:focusable="false"
android:ems="10"
android:inputType="textPersonName"
android:hint="Start date"
android:text="@={addProductViewModel.inputStartDate}"
android:onClick="@{() -> addProductViewModel.showStartDateDatePicker()}"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.497"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/etProductType" />
Request you to suggest where I am getting it wrong
Thanks R