CalendarViewShown no está siendo reconocido en Android 5.0 Lollipop

Estoy trabajando en la guía para Android de The Big Nerd Ranch. En la asignación Intención criminal estoy usando DatePicker con el siguiente diseño.

En dispositivos anteriores a 5.0, el calendario no se muestra en DatePicker como se define en el diseño, pero Android 5.0 lo ignora y muestra un calendario. ¿Alguna idea de lo que podría estar pasando aquí?

El código completo está disponible en Github .

Dialog_date.xml

<?xml version="1.0" encoding="utf-8"?> <DatePicker xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/dialog_date_datePicker" android:layout_width="match_parent" android:layout_height="match_parent" android:calendarViewShown="false" > </DatePicker> 

DatePickerFragment.java

 package com.sudhirkhanger.android.criminalintent; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; import android.app.Activity; import android.app.AlertDialog; import android.app.Dialog; import android.content.DialogInterface; import android.content.Intent; import android.os.Bundle; import android.support.v4.app.DialogFragment; import android.view.View; import android.widget.DatePicker; import android.widget.DatePicker.OnDateChangedListener; public class DatePickerFragment extends DialogFragment { public static final String EXTRA_DATE = "com.sudhirkhanger.android.criminalintent.date"; private Date mDate; public static DatePickerFragment newInstance(Date date) { Bundle args = new Bundle(); args.putSerializable(EXTRA_DATE, date); DatePickerFragment fragment = new DatePickerFragment(); fragment.setArguments(args); return fragment; } private void sendResult(int resultCode) { if (getTargetFragment() == null) return; Intent i = new Intent(); i.putExtra(EXTRA_DATE, mDate); getTargetFragment().onActivityResult(getTargetRequestCode(), resultCode, i); } @Override public Dialog onCreateDialog(Bundle savedInstanceState) { mDate = (Date) getArguments().getSerializable(EXTRA_DATE); // Create a Calendar to get the year, month, and day final Calendar calendar = Calendar.getInstance(); // calendar.setTime(mDate); int year = calendar.get(Calendar.YEAR); int month = calendar.get(Calendar.MONTH); int day = calendar.get(Calendar.DAY_OF_MONTH); View v = getActivity().getLayoutInflater().inflate( R.layout.dialog_date, null); DatePicker datePicker = (DatePicker) v .findViewById(R.id.dialog_date_datePicker); datePicker.init(year, month, day, new OnDateChangedListener() { public void onDateChanged(DatePicker view, int year, int month, int day) { // Translate year, month, day into a Date object using a // calendar int hour = calendar.get(Calendar.HOUR_OF_DAY); int minute = calendar.get(Calendar.MINUTE); mDate = new GregorianCalendar(year, month, day, hour, minute) .getTime(); // Update argument to preserve selected value on rotation getArguments().putSerializable(EXTRA_DATE, mDate); } }); return new AlertDialog.Builder(getActivity()) .setView(v) .setTitle(R.string.date_picker_title) .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { sendResult(Activity.RESULT_OK); } }).create(); } } 

La solución ha sido publicada aquí

Tienes que usar ambos android:calendarViewShown="false" y android:datePickerMode="spinner" .

Esto lo resuelve.

 <DatePicker xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/dialog_date_datePicker" android:layout_width="match_parent" android:layout_height="match_parent" android:calendarViewShown="false" android:datePickerMode="spinner" > </DatePicker> 

Abajo código trabajado para mí

 new DatePickerDialog(getActivity(),android.R.style.Theme_Holo_Dialog, this, year,month, day); 
  • Android: ¿Cómo cambiar el color de la fecha seleccionada en un elemento DatePicker?
  • Fecha de formato de Android a MM-DD-AAAA de Datepicker
  • Android: timepicker y datepicker en el mismo cuadro de diálogo
  • DatePicker muestra el valor incorrecto del mes
  • ¿Por qué Chrome en el selector de fecha HTML5 nativo de Android se vuelve muy lento?
  • Android DatePicker no reconoce cuándo se ha cambiado el año a través de la escritura
  • Mostrar la selección del año primero en la vista del calendario de Android
  • Android datepicker set fecha máxima hace 14 años
  • Android 5.0 Datepicker en scrollview no funciona (no se desplaza meses)
  • Ios como el selector de fecha / hora para la plataforma android
  • Android Datepicker Fragment - ¿Cómo hacer algo cuando el usuario establece una fecha?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.