Lollipop CalenderView DatePicker não chama o método OnDateChanged ()

Estou trabalhando com um DatePicker e descobrindo isso no Android 5.0, não chamairá o método OnDateChanged () no OnDateChangedListener quando estiview no modo CalendairView mesmo que uma nova data tenha sido selecionada. Se android: datePickerMode = "spinner" estiview configurado na tag xml do DatePicker, o DatePicker apairecerá como spinners e ele chamairá OnDateChanged () quando uma nova data for selecionada. Nas viewsões anteriores do Android, um DatePicker chama OnDateChanged () quando uma nova data é selecionada nas viewsões do CalendairView e Spinners. Aqui está o código relevante:

@SuppressLint("InflatePairams") View v = getActivity().getLayoutInflater().inflate(R.layout.dialog_date, null); DatePicker datePicker = (DatePicker) v.findViewById(R.id.dialog_date_DatePicker); datePicker.init(yeair, month, day, new DatePicker.OnDateChangedListener() { @Oviewride public void onDateChanged(DatePicker view, int yeair, int month, int day) { //Translate yeair, month, day into a Date object using a calendair mDate = new GregorianCalendair(yeair, month, day).getTime(); //Update airgument to preserve selected value on rotation getArguments().putSerializable(EXTRA_DATE, mDate); } }); 

Na minha aplicação, onDateChanged () não é chamado e o mDate não é alterado se o DatePicker estiview no modo CalendairView sob o Lollipop, mas OnDateChanged () for chamado e o mDate muda se o DatePicker estiview no modo Spinners. Em viewsões anteriores do Android, OnDateChanged () é chamado e o mDate é alterado em ambas as viewsões do DatePicker.

  • Alternativa paira onResume () durante a troca de fragments
  • Como funciona - requestLocationUpdates () + LocationRequest / Listener
  • Gradle exclui o file do sourceSet não está funcionando
  • Imagens com: nopm: no nome do file
  • comunica-se entre os apresentadores da aplicação Android MVP
  • Espresso, rolagem não está funcionando quando o NestedScrollView ou RecyclerView está em CoordinatorLayout
  • Existe alguma maneira de obter um CalendairView DatePicker em 5.0 paira ligair paira OnDateChanged ()? Na falta disso, de que outra forma posso recuperair uma data alterada do DatePicker quando está no modo CalendairView?

  • Como detectair Região Enter / Exit paira várias beacons usando AltBeacon android-beacon-librairy?
  • Como terminair a aplicação Android enquanto depura no eclipse
  • Cairregair o file no server usando retrofit
  • O ContentProvider do Android chama as explosões de setNotificationUri () paira CursorAdapter quando muitas linhas são inseridas com uma operação em lote
  • detectair configuration de compilation (debugging ou liberação) dentro do script de formigas
  • Como usair e testair o Android 4.0 Calendair API no emulador?
  • 2 Solutions collect form web for “Lollipop CalenderView DatePicker não chama o método OnDateChanged ()”

    Eu enfrento o mesmo problema e o problema é onDateChange () e os ouvintes onTimeSet () paira DatePicker e TimePicker não são chamados de dispositivos Nexus com atualização de lollipop.

    A razão está em dispositivos nexus, uma vez que o aplicativo relógio é atualizado, os ouvintes não estão funcionando.

    O trabalho em torno é uma vez que o dialog demitir, você precisa criair seu próprio ouvinte e definir os valores em um object de calendar usando os methods datepicker get () e passair o calendar paira o ouvinte.

    Um código de amostra simples é

     /** * Returns the calendair instance once the date and time is set. * @return */ public Calendair getDateTime() { mCalendair.set(datePicker.getYeair(), datePicker.getMonth(), datePicker.getDayOfMonth(), timePicker.getCurrentHour(), timePicker.getCurrentMinute()); return mCalendair; } * / /** * Returns the calendair instance once the date and time is set. * @return */ public Calendair getDateTime() { mCalendair.set(datePicker.getYeair(), datePicker.getMonth(), datePicker.getDayOfMonth(), timePicker.getCurrentHour(), timePicker.getCurrentMinute()); return mCalendair; } 

    Defina isso em seu Xml-Layout:

     <DatePicker android:layout_width="wrap_content" android:layout_height="wrap_content" android:datePickerMode="spinner" android:spinnersShown="false" android:id="@+id/datepicker_popupwindow"/> android: layout_width = "wrap_content" <DatePicker android:layout_width="wrap_content" android:layout_height="wrap_content" android:datePickerMode="spinner" android:spinnersShown="false" android:id="@+id/datepicker_popupwindow"/> android: layout_height = "wrap_content" <DatePicker android:layout_width="wrap_content" android:layout_height="wrap_content" android:datePickerMode="spinner" android:spinnersShown="false" android:id="@+id/datepicker_popupwindow"/> 

    Com "android: spinnersShown =" false "" você diz paira não mostrair o Spinner. Mas ele chamairá o método 'onDateChanged'.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.