Domanda

Quindi il mio obiettivo è quello di fornire una notifica ad un'altra classe con l'utilizzo di NSNotificationCenter, anche io voglio passare object con la notifica agli altri class, come devo fare questo?

È stato utile?

Soluzione

È necessario registrare un nome di notifica

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(startLocating:) name:@"ForceUpdateLocation" object:nil]; // don't forget the ":"

E poi inviare una notifica con un dizionario di parametri

[[NSNotificationCenter defaultCenter] postNotificationName:@"ForceUpdateLocation" object:self userInfo:[NSDictionary dictionaryWithObject:@"1,2,3,4,5" forKey:@"categories_ids"]]; 

e il metodo sarà

- (void)startLocating:(NSNotification *)notification {

    NSDictionary *dict = [notification userInfo];
}

Altri suggerimenti

Basta chiamare qualsiasi metodo per le notifiche inviare messaggi come descritto qui , per esempio:

per inviare una notifica:

-(void)postNotificationName:(NSString *)notificationName
                     object:(id)notificationSender
                   userInfo:(NSDictionary *)userInfo;

dove userInfo è un dizionario contenente oggetti utili.

Al di là di registrarsi per le notifiche:

-(void)addObserver:(id)notificationObserver
           selector:(SEL)notificationSelector
               name:(NSString *)notificationName
             object:(id)notificationSender;

Si potrebbe anche verificare di Apple Notifica Programmazione Argomenti .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top