Instance Method インスタンスメソッド

addObserver(_:selector:name:object:)

Adds an entry to the notification center to call the provided selector with the notification. ある登録項目を通知センターに加えて、提供されたセレクタをその通知で呼び出すようにします。

Declaration 宣言

func addObserver(_ observer: Any, 
        selector aSelector: Selector, 
            name aName: NSNotification.Name?, 
          object anObject: Any?)

Parameters パラメータ

observer

An object to register as an observer. オブザーバ(監視者)として登録することになるオブジェクト。

aSelector

A selector that specifies the message the receiver sends observer to alert it to the notification posting. The method that aSelector specifies must have one and only one argument (an instance of NSNotification). レシーバがobserverに送って、それに通知を投函することを警告するメッセージを指定するセレクタ。aSelectorが指定するメソッドは、ただひとつだけの引数(NSNotificationのインスタンス)を持たなければなりません。

aName

The name of the notification to register for delivery to the observer. Specify a notification name to deliver only entries with this notification name. オブザーバへの配達のために登録することになる通知の名前。ある通知名を指定して、この通知名をもつ登録項目のみを配達するようにしてください。

When nil, the sender doesn’t use notification names as criteria for the delivery. nilの場合、送信者は通知名を配達のための基準として使いません。

anObject

The object that sends notifications to the observer. Specify a notification sender to deliver only notifications from this sender. 通知をオブザーバに送るオブジェクト。ある通知送信者を指定して、この送信者からの通知のみを配達してください。

When nil, the notification center doesn’t use sender names as criteria for delivery. nilの場合、通知センターは送信者名を配達の基準として使いません。

Discussion 議論

Unregister an observer to stop receiving notifications. オブザーバを登録解除することで、通知の受け取りを停止してください。

To unregister an observer, use removeObserver(_:) or removeObserver(_:name:object:) with the most specific detail possible. For example, if you used a name and object to register the observer, use the name and object to remove it. あるオブザーバを登録解除するには、removeObserver(_:)またはremoveObserver(_:name:object:)をできるだけ多くの具体的な詳細で使ってください。例えば、あなたがオブザーバを登録するのに名前とオブジェクトを使ったならば、名前とオブジェクトを使ってそれを除去してください。

If your app targets iOS 9.0 and later or macOS 10.11 and later, you do not need to unregister an observer that you created with this function. If you forget or are unable to remove an observer, the system cleans up the next time it would have posted to it. あなたのアプリがiOS 9.0以降またはmacOS 10.11以降を目標とするならば、あなたはあなたがこの関数で作成したオブザーバを登録解除する必要はありません。あなたがオブザーバの除去を忘れるまたはそれができないならば、システムは、次にそれがそれに投函する時に片付けます。

See Also 参照

Adding and Removing Notification Observers 通知を追加および除去する