7

Ich registriere einen Beobachter auf einer Reihe von Tableview-Controller dynamisch, so dass ich vorherige Beobachter entfernen müssen, wenn sie auf dem gleichen Objekt registriert wurden. Um dies zu tun, muss ich überprüfen, ob der Beobachter auf dem Objekt existiert.KVO - Wie bekomme ich eine Liste von Objekten registrierten Beobachter

Ist das möglich? Ich weiß mit NSNotification können Sie das NSNotification Center Singleton verwenden, aber ist das das gleiche für KVO?

Antwort

2

Nein, es gibt keine einfache Möglichkeit, die mir bekannt ist. KVO und NSNotification unterscheiden sich in dieser Angelegenheit. Warum implementieren Sie nicht Ihre Lösung mit NSNotification statt KVO, wenn Sie diese Funktionalität benötigen?

+0

Ich bin an eine Tabellenansicht gebunden, um zu erkennen, wenn es Elemente hat. Ich denke, ich könnte eine Benachrichtigung manuell versenden. Ich habe eine Superklasse, die den Datenprovider behandelt. KVO scheint jedoch ideal. Ich könnte es auch anders machen. Danke für die schnelle Antwort. –

15

Ich weiß nicht, wie Sie Beobachter auf den gleichen Objekten registriert entfernen können.

Aber ich denke, unten Methode wird Ihnen helfen, wenig voran zu bewegen, um Ihre Lösung zu finden.

observationInfo

Gibt einen Zeiger, die Informationen über alle Beobachter identifiziert, die mit dem Empfänger registriert sind.

Die Standardimplementierung dieser Methode ruft die Informationen aus einem globalen Wörterbuch ab, das von den Zeigern des Empfängers codiert wird.

Verwandte Themen