2009-12-03 4 views
1

Est-il nécessaire que je dois écrire la méthode suivante pour appeler dans le cas .... partie. Si oui, alors comment et où je dois écrire cette méthode pour que le code suivant fonctionne correctement? Oui?Comparez les dates en utilisant l'objectif de cacao c

if (licenseDictionary == nil) 
    return @"Not Registered"; 
else if([today compare:expDate] == NSOrderedAscending) 
{ 
    [gotoButton setEnabled:YES]; 
    return [licenseDictionary objectForKey:@"Name"]; 
} 
else 
    return @"License Expired"; 
+0

Essayez-vous de comparer des objets personnalisés ou 'NSDates'? Si le dernier est le cas, vous devez implémenter la méthode dans votre implémentation de classe. –

Répondre

10

Il y a aussi earlierDate: et laterDate: et isEqualToDate:.

Vous trouverez la documentation sur les here.

donc quelque chose comme:

if ([today laterDate:expDate] == expDate) 

C'est ce codé sec ici dans le navigateur, mais je pense que c'est ce que vous voulez.

EDIT: je fixe une faute de frappe dans ce qui précède, vous n'avez pas besoin d'utiliser compare:. laterDate: et earlierDate: manipuler les comparaisons et renvoyer l'objet qui est postérieure ou antérieure, respectivement. Donc le code ci-dessus dit lequel est plus tard, aujourd'hui ou expDate, et si expDate est le dernier (la comparaison de pointeurs devrait fonctionner ici je pense, mais sinon essayez isEqualToDate: à la place) alors il n'a pas encore expiré et leur licence devrait être valide.

J'espère que cela plus de sens.

+0

remercie Bryan, mais je suis déjà allé Thro 'ceci. est der der d'une autre manière? – Shakti

+0

Quelle est exactement votre objection à l'utilisation des méthodes intégrées de NSDate pour tester cela? – NSResponder

+0

en fait, je ne suis pas capable de savoir comment fournir une date de reciever pour comparer la méthode que j'ai une variable expDate, je reçois la date pour cela à partir d'un fichier plist. ma question est-il nécessaire d'écrire une méthode de comparaison (NSComparisonResult): (NSDate *) expDate. comment et où? – Shakti

Questions connexes