2010-08-31 3 views

Répondre

0

MailCore ne peut pas vous envoyer des notifications automatiques quand les choses changent. En utilisant ce framework, vous devrez pinguer périodiquement le serveur. Créer un NSTimer:

NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(refresh:) userInfo:nil repeats:YES]; 

E.g. ajouter une propriété pour le dernier nombre de messages vu: @property NSUInteger lastMessageCount; Puis écrire le mode de scrutin:

- (void)refresh:(NSTimer *)aTimer { 
    // given a CTCoreFolder *folder 
    NSUInteger count = [folder totalMessageCount]; 
    if (count != self.lastMessageCount) 
    [[NSNotificationCenter defaultCenter] postNotificationName:@"FolderUpdated" object:folder]; 
    self.lastMessageCount = count; 
} 

Vous pouvez observer que la notification et être informé chaque changement de dossier. Devrait être assez facile pour vous de l'ajuster à vos besoins maintenant ...

+0

Ok. Mais comment puis-je lire la ligne d'objet? – objectiveccoder001

+0

en parcourant tous les messages et en vérifiant leurs sujets. obtenez-les en utilisant '-messageObjectsFromIndex: toIndex:' et ensuite itérez, en vérifiant chaque sujet. Vous pourriez également vouloir vérifier 'messageListWithFetchAttributes:', peut-être cela applique des filtres directement sur le serveur ... –

+0

Pouvez-vous me montrer un exemple? – objectiveccoder001

Questions connexes