DatePickerDialog не работает должным образом

У меня есть EditView, в котором я пытаюсь связать DatePickerDialog. Он хорошо работает с api 19. но при тестировании на api версии 25 Marshmallow календарь становится белым, и при выборе какой-либо даты EditView также не заполняется, т.е. я не могу установить дату в Marshmallow.

Код:

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()));
        }

person Mehvish Ali    schedule 15.03.2017    source источник
comment
опубликуйте свою папку стилей.   -  person Minkoo    schedule 15.03.2017


Ответы (3)


это может быть тема, которую вы используете в своем проекте. Поэтому используйте тему ниже в файле стиля.

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
   <item name="colorPrimary">@color/green_sheet</item>
   <item name="android:textAllCaps">false</item>     
</style>

Надеюсь, это поможет вам.

person Rahul Sharma    schedule 15.03.2017
comment
Я расширяю свою AppTheme из AppTheme.Base ‹style name=AppTheme.Base parent=Theme.AppCompat.Light.NoActionBar› - person Mehvish Ali; 15.03.2017
comment
просто попробуйте с приведенным выше примером темы - person Rahul Sharma; 15.03.2017

Удалите это из своего стиля:

<item name="android:textColorPrimary">@color/white</item>
person Minkoo    schedule 15.03.2017

попробуйте это, он может отображать диалог, как вы хотите

   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>
person Dileep Patel    schedule 15.03.2017