DatePickerDialog не работает должным образом
У меня есть EditView
в котором я пытаюсь связать DatePickerDialog
, Хорошо работает с API 19. но при тестировании на API версии 25 Marshmallow календарь становится белым, а при выборе какой-либо даты EditView
также не заполнен, т.е. я не могу установить дату в Зефир.
Код:
warrantyExpEt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
new DatePickerDialog(getContext(), date, myCalendar
.get(Calendar.YEAR), myCalendar.get(Calendar.MONTH),
myCalendar.get(Calendar.DAY_OF_MONTH)).show();
}
});
final DatePickerDialog.OnDateSetListener date = new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
// TODO Auto-generated method stub
myCalendar.set(Calendar.YEAR, year);
myCalendar.set(Calendar.MONTH, monthOfYear);
myCalendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);
updateLabel();
}
};
private void updateLabel() {
String myFormat = "yyyy-MM-dd";
SimpleDateFormat sdf = new SimpleDateFormat(myFormat, Locale.US);
warrantyExpEt.setText(sdf.format(myCalendar.getTime()));
}
3 ответа
Это может быть тема, которую вы используете в своем проекте. Так что используйте ниже тему в вашем файле стиля
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="colorPrimary">@color/green_sheet</item>
<item name="android:textAllCaps">false</item>
</style>
Надеюсь, это поможет вам.
Удалите это из вашего стиля:
<item name="android:textColorPrimary">@color/white</item>
Попробуйте это может показать диалог, как вы хотите
new DatePickerDialog(MainActivity.this, R.style.datepicker, new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int month, int day) {
calendar.set(Calendar.YEAR, year);
calendar.set(Calendar.MONTH, month);
calendar.set(Calendar.DAY_OF_MONTH, day);
}
}, year, month, day).show();
стиль диалога, как вы хотите
<style name="datepicker" parent="Theme.AppCompat.Light.Dialog">
<item name="colorAccent">@color/red</item>
</style>