Najlepsze praktyki dotyczące parametru kontekstu w addObserver (KVO)

Zastanawiałem się, co powinieneś ustawić wskaźnik kontekstu w KVO, gdy obserwujesz nieruchomość. Właśnie zaczynam używać KVO i nie zebrałem zbyt wiele z dokumentacji. Widzę na tej stronie:http://www.jakeri.net/2009/12/custom-callout-bubble-in-mkmapview-final-solution/ autor robi to:

[annView addObserver:self
forKeyPath:@"selected"
options:NSKeyValueObservingOptionNew
context:GMAP_ANNOTATION_SELECTED];

A potem w wywołaniu zwrotnym robi to:

- (void)observeValueForKeyPath:(NSString *)keyPath
ofObject:(id)object
change:(NSDictionary *)change
context:(void *)context{

NSString *action = (NSString*)context;


if([action isEqualToString:GMAP_ANNOTATION_SELECTED]){

Zakładam, że w tym scenariuszu autor po prostu tworzy ciąg znaków, który zostanie zidentyfikowany później w wywołaniu zwrotnym.

Następnie w książce iOS 5 Pushing the Limits widzę, że to robi:

[self.target addObserf:self forKeyPath:self.property options:0 context:(__bridge void *)self];

oddzwonić:

if ((__bridge id)context == self) {
}
else {
   [super observeValueForKeyPath .......];
}

Zastanawiałem się, czy istnieje standard lub najlepsze praktyki do przekazania do wskaźnika kontekstu?

questionAnswers(3)

yourAnswerToTheQuestion