Ich versuche, nur Tag der Monats- und Monatsfelder in DatePicker in AlertDialog anzuzeigen. Auf früheren APIs von API 21 kann ich es mit Code unten tun. Aber wenn ich versuche, es in API21 zu tun, kehrt "getDeclaredFields()" nicht sogar wie "mYearPicker" oder "mYearSpinner" Felder zurück. Jeder hat irgendeine Idee wie Kann ich nur Tag und Monat Felder anzeigen? Und ich weiß nicht einmal, welches Feld "116" ist.Android API 21+ DatePicker kann Felder nicht ausblenden
Mein Code wie folgt aus: Before API 21
sieht wie folgt aus: API 21+
Jede Idee
final DatePicker datePickerStart = new DatePicker(new ContextThemeWrapper(getActivity(), android.R.style.Theme_Holo_Light_Dialog_NoActionBar));
datePickerStart .setCalendarViewShown(false);
datePickerStart .setSpinnersShown(true);
try {
Field f[] = datePickerStart .getClass().getDeclaredFields();
for (Field field : f) {
if (field.getName().equals("mYearPicker")|| field.getName().equals("mYearSpinner")) {
field.setAccessible(true);
Object yearPicker = new Object();
yearPicker = field.get(datePickerStart);
((View) yearPicker).setVisibility(View.GONE);
}
}
}
catch (Exception e) {
Log.e("ERROR", e.getMessage());
}
aussehen sollte?
Ähm, warum nicht gabeln 'DatePicker' und sie entsprechend anpassen ? Oder warum nicht [eine Drittanbieter-Bibliothek] (http://android-arsenal.com/tag/27) verwenden? Was lässt Sie vermuten, dass dieser Ansatz für Tausende von Android-Gerätemodellen geeignet ist, da Gerätehersteller die Android-Interna ändern können, ganz zu schweigen von Google mit neuen Android-Versionen? – CommonsWare
scheint wie ein Duplikat von http://stackoverflow.com/questions/30789907/hide-day-month-or-year-from-datepicker-in-android-5-0-lollipop – Morse
@Morse danke !! es hat gut funktioniert – Goktug