Это другой контекст , который означает, что вы используете эту функцию в классе прослушивателя анонимных кликов, и когда вы передаете this
, он будет воспринимать этот контекст не как родительский или класс деятельности в вашем случае. просто внесите небольшое изменение, как показано ниже:
DatePickerDialog dialog = new DatePickerDialog(MainActivity.this, MainActivity.this, mYear, mMonth, mDay);
datePickerDialog.show();
, если коротко сказать this
, тогда он передаст текущий контекст, который является контекстом прослушивателя щелчка, в вашем случае, и Dialog нужен контекст Activity, поэтому вместо этого используйте MainActivity.this
чтобы указать на основной контекст деятельности. В Kotlin этот контекст будет называться this@MainActivity