Mostrar selector de fechas con mes y año sólo para lollipop 5.0 en android
Mostrar selector de fecha con el mes y el año sólo para lollipop 5.0 en android, se puede hacer en versiones inferiores, pero ¿cómo puedo hacerlo para android 5.0.
- Estado de artículo personalizado para selectores de android
- Android: ¿Cómo lograr el efecto de resplandor cuando presiona un elemento de lista con mucho tiempo?
- ¿Cómo configurar diferentes temas para el selector de botones?
- Desactivar el color de resaltado de fondo del elemento de menú en android
- Multiple DatePickers en la misma actividad
- ¿Cómo puedo agregar un nuevo botón en el widget del selector de fechas en android?
- ¿Cómo obtienes el color de la selección en Android?
- Android cómo aplicar forma y selector simultáneamente para Button
- Cambio de estilo TextView state_pressed / state_focused / state_selected
- Selector de fondo de botón de Android
- ¿Cuál es el valor predeterminado para presionar un elemento de lista
- Fondo de color de fondo de Android Textview
- ImageButton en el widget de pantalla de inicio de Android
Esto puede hacerse ajustando su DatePicker al modo spinner y obteniendo el Spinner for Day y ocultándolo mediante programación.
Aquí está el XML (dialog_date_picker.xml):
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:padding="8dp" android:layout_height="match_parent"> <DatePicker android:id="@+id/date_picker" android:layout_width="match_parent" android:calendarViewShown="false" android:datePickerMode="spinner" android:layout_weight="4" android:layout_height="0dp" /> <Button android:id="@+id/date_time_set" android:layout_weight="1" android:layout_width="match_parent" android:text="Set" android:layout_height="0dp" /> </LinearLayout>
Aquí está el código para hacerlo.
private Calendar mCalendar; ... mCalendar = Calendar.getInstance(); final View dialogView = View.inflate(this, R.layout.dialog_date_picker, null); final AlertDialog alertDialog = new AlertDialog.Builder(this).create(); DatePicker datePicker = (DatePicker) dialogView.findViewById(R.id.date_picker); datePicker.init(mCalendar.get(Calendar.YEAR),mCalendar.get(Calendar.MONTH),mCalendar.get(Calendar.DAY_OF_MONTH),null); LinearLayout ll = (LinearLayout)datePicker.getChildAt(0); LinearLayout ll2 = (LinearLayout)ll.getChildAt(0); ll2.getChildAt(0).setVisibility(View.INVISIBLE); dialogView.findViewById(R.id.date_time_set).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { DatePicker datePicker = (DatePicker) dialogView.findViewById(R.id.date_picker); mCalendar = new GregorianCalendar(datePicker.getYear(), datePicker.getMonth(), datePicker.getDayOfMonth()); alertDialog.dismiss(); } });
Esto debería funcionar para todas las versiones de android (api> 11)
datePicker.findViewById(Resources.getSystem().getIdentifier("day", "id", "android")).setVisibility(View.GONE);
Escribí un simple, espero que te ayude
final Calendar c = Calendar.getInstance(); mYear = c.get(Calendar.YEAR); mMonth = c.get(Calendar.MONTH); mDay = c.get(Calendar.DAY_OF_MONTH); DatePickerDialog dpd = new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() { @Override public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { txtDate.setText(dayOfMonth + "-" + (monthOfYear + 1) + "-" + year); } }, mYear, mMonth, mDay); dpd.show();
- No Serializable Excepción en clase personalizada – Android
- ¿Por qué hay diferente sintaxis de id en los documentos Android?