Tema de DatePickerDialog de Android 6.0

Parece que cualquiera que use Marshmallow (Android 6.0) no puede usar el DatePicketDialog dentro de mi aplicación. Parece que hay algún tipo de tema tema que estoy encontrando. Utilizo un DialogFragment que contiene un DatePicketDialog para que el usuario seleccione cumpleaños. Aquí hay fotos del DialogFragment con Android 5.x y 6.x.

Android 5.x Android 6.x

DialogFragment agregar un tema en el constructor de DatePickerDialog , pero ésa hizo la pantalla completa de DialogFragment y no quiero eso. ¿Alguien sabe cómo puedo obtener el DatePickerDialog para que parezca que era antes de Marshmallow?

ACTUALIZACIÓN 1

Aquí está el código donde crear el DialogFragment :

 DialogFragment ageFragment = new DatePickerDialogFragment(); ageFragment.show(getFragmentManager(), "datePicker"); 

Aquí está el onCreateDialog dentro del DatePickerDialogFragment :

 @Override public Dialog onCreateDialog(Bundle savedInstanceState) { // Use the current date as the default date in the picker if no filters are set Calendar cal = Calendar.getInstance(); // Set the date 18 years previous, since only 18 and older are allowed on the app cal.add(Calendar.YEAR, -18); int year, month, day; if (iDialogListener.getYear() == -1 || iDialogListener.getMonth() == -1 || iDialogListener.getDay() == -1) { Calendar defaultCal = Calendar.getInstance(); // 40 is the default age to show defaultCal.add(Calendar.YEAR, -40); year = defaultCal.get(Calendar.YEAR); month = defaultCal.get(Calendar.MONTH); day = defaultCal.get(Calendar.DAY_OF_MONTH); } else { year = iDialogListener.getYear(); month = iDialogListener.getMonth(); day = iDialogListener.getDay(); } DatePickerDialog datepicker = new DatePickerDialog(getActivity(), this, year, month, day); datepicker.getDatePicker().setMaxDate(cal.getTimeInMillis()); Calendar minDate = Calendar.getInstance(); minDate.set(Calendar.YEAR, Calendar.getInstance().get(Calendar.YEAR) - 100); datepicker.getDatePicker().setMinDate(minDate.getTimeInMillis()); // Create a new instance of DatePickerDialog and return it return datepicker; } 

En themes.xml la única línea que toca los Dialogs es

 <item name="android:alertDialogTheme">@style/CustomDialogTheme</item> 

Pero si estoy pensando bien, que no toca el DialogFragment hace?

Actualización 2

Aquí está el CustomDialogTheme :

 <style name="CustomDialogTheme" parent="@android:style/Theme.Holo.Light.Dialog"> <item name="android:windowBackground">@android:color/transparent</item> <item name="android:windowContentOverlay">@null</item> <item name="android:windowMinWidthMajor">@android:dimen/dialog_min_width_major</item> <item name="android:windowMinWidthMinor">@android:dimen/dialog_min_width_minor</item> </style> 

Gracias al post ¿Cómo cambiar el estilo de selector de fecha en android? , Pude mostrar correctamente el DatePicker . Tuve que utilizar parent="Theme.AppCompat.Light.Dialog" al diseñar el DatePicker

Simplemente cambie el color Color de color en los estilos .xml:

 <style name="MyMaterialTheme.Base" parent="Theme.AppCompat.Light.DarkActionBar"> <item name="colorAccent">#FC6C2D</item> ---> I used orange color here to display the picker dialog in orange color for marshmallow device. <item name="android:textColorPrimary">#000000</item> <item name="android:textColorSecondary">#000000</item> </style> 

Crea el tema en styles.xml pero no lo referencia a DatePickerDialog como

 DatePickerDialog dlg = new DatePickerDialog(getActivity(), R.style.datepickerCustom,this,year,month,day); 

Y crear un nombre de carpeta values-v21 y añadirle una copia de style.xml . Y pegar

 <style name="datepickerCustom" parent="@android:style/Theme.DeviceDefault.Light.Dialog"> <item name="android:colorAccent">@color/orange_theme</item> <item name="android:windowBackground">@android:color/darker_gray</item> <!--<item name="android:windowContentOverlay">@null</item>--> <!--<item name="android:textColorPrimary">@color/white</item>--> <!--<item name="android:textColorSecondary">@color/white</item>--> </style> 
  • Android: ¿Acabo de tener un disparo por propiedad mediante el uso de temas? ¿No hay nada como CSS en Android?
  • El cambio de tema no funciona en <4.0 como debería
  • Uso del adaptador ListView personalizado con los temas predeterminados de Android
  • Estilo ICS en aplicaciones Froyo y Gingerbread
  • Elementos del menú de desbordamiento denominados barra de acción
  • Diseño de widget Android - fondo negro predeterminado
  • Atributos de altura de ActionBarSherlock en sdk bajo
  • Utilizar atributos en el selector - Android
  • ActionBarSherlock apilado barra de acción estilo problema
  • Color del selector de lista de Android 4.4 Kit Kat
  • Cómo establecer el tema para ProgressBar indeterminista en ProgressDialog en Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.