2010-12-13 28 views
-1

Je dois sélectionner un intervalle de temps.Comment vérifier si timepicker1 est plus ancien que timepicker2?

J'ai deux timepickers sur mon application, j'ai besoin de vérifier si timepicker1 temps est inférieur à timepicker2 temps sélectionné. Sinon, je dois montrer un toast pour dire à l'utilisateur l'erreur.

J'ai aussi besoin de faire cela avec deux datpickers, pas avec des temps dans ce cas, mais avec des dates.

s'il vous plaît quelqu'un peut-il me donner quelques exemples de code pour ce faire?

Répondre

2

Vous avez juste besoin de comparer les composants individuels de la date ou de l'heure dans le bon ordre. Pour l'heure:

if (time1.getCurrentHour() < time2.getCurrentHour() || (time1.getCurrentHour() == time2.getCurrentHour() && time1.getCurrentMinute() < time1.getCurrentMinute())) { 
    //time 1 is earlier. 
} 

Vous devrez peut-être ajouter un peu de complexité selon si vous affichez 24 heures ou non. Pour les dates, c'est pareil, il suffit de comparer d'abord l'année puis le mois puis le jour.

+0

ce code est incorrect, il échouera lorsque l'heure est inférieure, mais min est plus élevé – NullPointerException

+0

il n'y a pas d'autre moyen de le faire? il doit être une autre façon .... moyen facile – NullPointerException

+0

AndroidUser - ce n'est pas vraiment si difficile. Envelopper dans une méthode si vous avez besoin de l'appeler dans quelques endroits différents. Qu'attendez-vous? – I82Much