Class

NSNotification

An object containing information broadcast to registered observers that bridges to Notification; use NSNotification when you need reference semantics or other Foundation-specific behavior. 情報を含んでいるあるオブジェクトはNotificationにブリッジする登録オブザーバに放送します;あなたが参照意味論や他のFoundation特有の挙動を必要とする場合はNSNotificationを使ってください。

Declaration 宣言

class NSNotification : NSObject

Overview 概要

A notification contains a name, an object, and an optional dictionary, and is broadcast to by instances of NotificationCenter or DistributedNotificationCenter. The name is a tag identifying the notification. The object is any object that the poster of the notification wants to send to observers of that notification (typically, the object posting the notification). The dictionary stores other related objects, if any. NSNotification objects are immutable. 名前は、通知を識別するタグ(標識)です。オブジェクトは、何からのオブジェクトで、通知の投稿者がその通知のオブザーバに送ることを望むものです(概して、通知を投函しているオブジェクト)。辞書は、他の関連するオブジェクトを格納します、もしあれば。NSNotificationオブジェクトは、不変です。

You don’t usually create your own notifications directly, but instead call the NotificationCenter methods post(name:object:) and post(name:object:userInfo:). あなたは普通はあなた独自の通知を直接に作成しません、しかし代わりにNotificationCenterのメソッドpost(name:object:)post(name:object:userInfo:)を呼び出します。

Object Comparison オブジェクト比較

The objects of a notification are compared using pointer equality for local notifications. Distributed notifications use strings as their objects, and those strings are compared using isEqual(_:), because pointer equality doesn’t make sense across process boundaries. ある通知のオブジェクトは、ローカル通知に対してポインタ同等性を使って比較されます。配達される通知は、文字列をそれらのオブジェクトとして使います、そしてそれらの文字列はisEqual(_:)を使って比較されます、なぜならポインタ同等性はプロセス境界を越えて意味をなしません。

Creating Subclasses サブクラスを作成する

You can subclass NSNotification to contain information in addition to the notification name, object, and dictionary. This extra data must be agreed upon between notifiers and observers. あなたは、NSNotificationのサブクラスを作って、通知の名前、オブジェクト、そして辞書に加えて情報を含むことができます。この余分なデータは、通知とオブザーバの間で意見が一致していなければなりません。

NotificationCenter is a class cluster with no instance variables. As such, you must subclass NSNotification and override the primitive methods name, object, and userInfo. You can choose any designated initializer you like, but be sure that your initializer does not call init() on super (NSNotification is not meant to be instantiated directly, and its init method raises an exception). NotificationCenterは、インスタンス変数を持たないあるクラスクラスタです。そういうものとして、あなたはNSNotificationのサブクラスを作成して、根本的メソッドnameobject、そしてuserInfoをオーバーライドしなければなりません。あなたは、あなたの好きな何らかの指定イニシャライザを選ぶことができます、しかしあなたのイニシャライザがinit()super上で呼び出さないことを確実にしてください(NSNotificationは直接にインスタンス化されることになっていません、そしてそれのinitメソッドは例外を引き起こします)。

Topics 話題

Creating Notifications 通知を作成する

Getting Notification Information 通知情報を得る

Relationships 関係

Inherits From 継承元

Conforms To 次に準拠

See Also 参照

Using Reference Types 参照型を使用する

Related Documentation 関連文書