Je dois désactiver les dates antérieures dans le contrôle datepicker. Ce contrôle est ouvert dans une boîte de dialogue, là je veux désactiver les dates passées afin qu'il jette l'erreur si la date passée est choisie.Android Désactiver les dates antérieures dans datepicker
Répondre
Je suppose que vous utilisez DatePickerDialog et OnDateSetListener que vous devez passer au constructeur ne correspond pas à vos besoins parce que vous devez jeter l'erreur avant la date est effectivement fixé.
Dans ce cas vous pouvez étendre DatePickerDialog et faire votre propre implémentation de OnDateChanged, qui est appelée chaque fois que la date change et vous obtenez comme paramètres le DatePicker, et les nouvelles valeurs de l'année, du mois et du jour, ainsi vous pouvez vérifier cette date est passée et dans ce cas, lancez l'erreur (avec un Toast ou autre) et appelez DatePicker.updateDate() pour définir une valeur correcte (afin que DatePicker soit toujours dans un état cohérent).
En outre, vous pouvez appeler à DatePicker.init(year, monthOfYear, dayOfMonth, onDateChangedListener);
alors vous pouvez passer une mise en œuvre onDateChangedListener
sans avoir à étendre DatePickerDialog
Vous pouvez vérifier la date manuellement .. et à restreindre l'utilisateur d'entrer la date invalide:
extrait de vérification de code suivant :
if((futureDate.getDate() == currentDate1.getDate() && futureDate.getMonth()== currentDate1.getMonth() && futureDate.getYear() == currentDate1.getYear()))
{
if(futureDate.after(currentDate1))
{
// Accept Date
}
else
{
// Alert user Date is Invalid
}
}
else
{
// Alert user Date is Invalid
}
Si vous utilisez l'API 11 ou plus, utilisez la méthode setMinDate() sur DatePicker
. Cela masque toutes les dates avant la date spécifiée.
Espérons que cela aidera.
public void openDateDialog (Voir la vue) { final Calendrier c = Calendar.getInstance(); final int dayOfMonth = c.get (Calendar.DAY_OF_MONTH); final int monthOfYear = c.get (Calendar.MONTH); final int année = c.get (Calendar.YEAR);
new MyDatePickerDialog(view.getContext(), null, year, monthOfYear, dayOfMonth).show();;
}
class MyDatePickerDialog extends DatePickerDialog {
public MyDatePickerDialog(Context context, OnDateSetListener callBack,
int year, int monthOfYear, int dayOfMonth) {
super(context, callBack, year, monthOfYear, dayOfMonth);
this.context = context;
}
private Context context;
@Override
public void onDateChanged(DatePicker view, int year, int month, int day) {
// TODO Auto-generated method stub
super.onDateChanged(view, year, month, day);
Calendar dareSelected = Calendar.getInstance();
dareSelected.set(year, month, day);
Calendar currentDate = Calendar.getInstance();
int a = dareSelected.compareTo(currentDate);
if(a<0){
Toast.makeText(context, "Invalid Date", Toast.LENGTH_SHORT).show();
}else{
setDate(year,month,day);
}
}
}
private void setDate(int year, int monthOfYear, int dayOfMonth){
tvText.setText(new StringBuilder().append(pad(dayOfMonth))
.append("-").append(pad(monthOfYear + 1)).append("-")
.append(pad(year)));
}
private static String pad(int c) {
if (c >= 10)
return String.valueOf(c);
else
return "0" + String.valueOf(c);
}
- 1. Désactiver les dates antérieures dans datepicker js
- 2. Désactiver les dates dans Jquery datepicker
- 3. Suppression des dates antérieures
- 4. problème avec Kelvin Chance datepicker [Sélectionner des dates antérieures]
- 5. dates Désactiver dans un datepicker jquery dynamiquement
- 6. dates Désactiver dynamiquement dans jquery datepicker
- 7. Désactiver des dates spécifiques dans Bootstrap Datepicker
- 8. Désactiver des dates plus anciennes qu'aujourd'hui dans le plugin DatePicker
- 9. désactiver dates dans jQuery datepicker avec des dates de MySQL
- 10. jQuery Datepicker désactiver Dates Problème sur IE
- 11. Désactiver les dates futures dans le sélecteur de date Android
- 12. Afficher uniquement les dates choisies dans datepicker
- 13. WordPress query_posts afficher les dates antérieures
- 14. jQuery Datepicker - Plusieurs instances et désactiver les dates précédemment sélectionnées?
- 15. jQuery Datepicker ne pas désactiver les dates 2012
- 16. iOS: Désactiver les dates antérieures dans le calendrier de la bibliothèque tapku
- 17. comment désactiver certaines dates avant aujourd'hui dans jQuery datepicker
- 18. Comment désactiver les dates sur le calendrier en utilisant javascript
- 19. Dates d'affichage du contrôle DatePicker WPF
- 20. Désactiver les dates précédentes du calendrier JQuery
- 21. Dates antérieures au 1er janvier 1970
- 22. Comparer les dates Datepicker Javascript
- 23. Limiter les dates typable dans jQuery datepicker
- 24. Utilisation de strtotime pour les dates antérieures à 1970
- 25. javascript: Comment masquer les DIV/UL représentant des dates antérieures?
- 26. PHP mktime() pour les dates antérieures à 1900
- 27. Définir les dates et les dates de l'expéditeur Android
- 28. Datepicker plage de dates
- 29. Comment désactiver (interaction utilisateur désactivée) les dates antérieures dans le calendrier de la bibliothèque tapku dans iOS
- 30. jquery datepicker dates de désactivation