Discussion
議論
Removing the observer stops it from receiving notifications.
オブザーバを除去することは、それが通知を受信するのを止めます。
If you used addObserver(forName:object:queue:using:)
to create your observer, you should call this method or removeObserver(_:)
before the system deallocates any object that addObserver(forName:object:queue:using:)
specifies.
あなたがaddObserver(forName:object:queue:using:)
をあなたのオブザーバを作成するのに使用したならば、あなたはこのメソッドまたはremoveObserver(_:)
を呼び出さなければなりません、addObserver(forName:object:queue:using:)
が指定する何らかのオブジェクトをシステムがデアロケートする前に。
If your app targets iOS 9.0 and later or macOS 10.11 and later, and you used addObserver(_:selector:name:object:)
to create your observer, you do not need to unregister the observer. If you forget or are unable to remove the observer, the system cleans up the next time it would have posted to it.
あなたのアプリがiOS 9.0以降またはmacOS 10.11以降を目標とするならば、そしてあなたのオブザーバを作成するためにあなたがaddObserver(_:selector:name:object:)
を使ったならば、あなたはオブザーバを登録解除する必要はありません。あなたがオブザーバの除去を忘れるまたはそれができないならば、システムは、次にそれがそれに投函する時に片付けます。
When unregistering an observer, use the most specific detail possible. For example, if you used a name and object to register the observer, use removeObserver(_:name:object:)
with the name and object.
オブザーバを登録解除する時、できるだけ多くの具体的な詳細を使ってください。例えば、あなたがオブザーバを登録するのに名前とオブジェクトを使ったならば、removeObserver(_:name:object:)
を名前とオブジェクトで使ってください。