theme - Android Material Design Datepicker con AppCompat
picker library (2)
Actualizar:
Como bien señaló jfcartier, ahora también hay MaterialDateTimePicker . Probablemente sea una solución mejor que la que se muestra a continuación, ya que tiene una API temática agradable.
Podrías probar la librería de android-betterpickers . Tiene un widget CalendarDatePickerDialog
que se parece al que desea. Proporciona un tema claro y oscuro, pero para personalizar los colores tendría que agregarlo como un proyecto de biblioteca y cambiar el código usted mismo.
El uso es bastante sencillo una vez que agrega la biblioteca a su proyecto.
// Create date picker listener.
CalendarDatePickerDialog.OnDateSetListener dateSetListener = new CalendarDatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(CalendarDatePickerDialog dialog, int year, int monthOfYear, int dayOfMonth) {
// Set date from user input.
Calendar date = Calendar.getInstance();
date.set(Calendar.HOUR_OF_DAY, 9);
date.set(Calendar.MINUTE, 0);
date.set(Calendar.YEAR, year);
date.set(Calendar.MONTH, monthOfYear);
date.set(Calendar.DAY_OF_MONTH, dayOfMonth);
// Do as you please with the date.
}
};
// Create dismiss listener.
CalendarDatePickerDialog.OnDialogDismissListener dismissListener = new CalendarDatePickerDialog.OnDialogDismissListener() {
@Override
public void onDialogDismiss(DialogInterface dialoginterface) {
// Do something when the user dismisses the dialog.
}
};
// Show date picker dialog.
CalendarDatePickerDialog dialog = new CalendarDatePickerDialog();
dialog.setOnDateSetListener(dateSetListener);
dialog.setOnDismissListener(dismissListener);
dialog.setThemeDark(false);
dialog.show(getSupportFragmentManager(), "DATE_PICKER_TAG");
El resultado final debe verse así (perdón por la mala calidad).
Estoy intentando agregar el nuevo Selector de fechas de material de Android 5.0 a mi aplicación pre 5.0 utilizando AppCompat. he añadido
compile "com.android.support:appcompat-v7:21.0.0"
a mi archivo build.gradle y actualicé mi tema a:
<?xml version="1.0" encoding="utf-8"?>
<style name="AppTheme.Base" parent="@style/Theme.AppCompat.Light">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="android:windowNoTitle">true</item>
<item name="windowActionBar">false</item>
</style>
pero el Datepicker todavía se ve así:
Y no así:
¿Alguien puede decirme cómo hacer que el nuevo selector de fechas funcione en dispositivos pre 5.0?
Gracias por adelantado.
Me gustó this biblioteca. Es un clon de Flavien Laurent Date and Time Picker con algunas mejoras. Ambos se basan en el Selector de fecha y hora oficial de Google para Android 4.3+ pero están adaptados para Android 2.1+.