文書   >   Foundation   >   Notifications   >   NotificationCenter   >   removeObserver(_:name:object:)
インスタンスメソッド
removeObserver(_:name:object:)
通知センターの急送テーブルから一致するエントリを削除します。
宣言
func removeObserver(_ observer: Any, name aName: NSNotification.Name?, object anObject: Any?)
パラメータ
observer | ディスパッチ (急送) テーブルから削除すべき監視者。この監視者のエントリだけを削除するには、オブザーバ (監視者) を指定します。 |
aName | ディスパッチ (急送) テーブルから削除すべき通知の名前。この通知名を指定するエントリだけを削除するには、通知名を指定します。nil の場合、受信者は削除の基準として通知名を使用しません。 |
anObject | 急送テーブルから削除すべき送信者。通知の送信者を指定して、この送信者を指定するエントリのみを削除します。nil の場合、受信者は通知の送信者を削除の基準として使用しません。 |
議論
あなたのアプリが iOS 9.0 以降、または macOS 10.11 以降をターゲットにしている場合、その dealloc メソッドで監視者の登録を解除する必要はありません。それ以外の場合は、addObserver(forName:object:queue:using:) または addObserver(_:selector:name:object:) で指定された observer または全てのオブジェクトが割り当て解除される前にこのメソッドあるいは removeObserver(_:) を呼び出す必要があります。
以下も見よ
通知監視者の追加と削除
通知キューを含む通知センターの急送テーブルに、エントリを追加し、通知キューにブロックを追加し、また optional の通知名と送信者を含みます。
func addObserver(Any, selector: Selector, name: NSNotification.Name?,
object: Any?)
監視者と通知セレクタ、および optional の通知名と送信者とともに、通知センターの急送テーブルにエントリを追加します。
通知センターの急送テーブルから特定の監視者を指定するすべてのエントリを削除します。