- init
- initWithCoder:
+ notificationWithName:object:
+ notificationWithName:object:userInfo:
- initWithName:object:userInfo:
NSNotificationName
Availability 有効性
Technology
@interface NSNotification : NSObject
A notification contains a name, an object, and an optional dictionary, and is broadcast to by instances of NSNotification
or NSDistributed
. 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 NSNotification
methods post
and post
.
あなたは普通はあなた独自の通知を直接に作成しません、しかし代わりにNSNotification
のメソッドpost
とpost
を呼び出します。
Important 重要
The Swift overlay to the Foundation framework provides the Notification
structure, which bridges to the NSNotification
class. For more information about value types, see Working with Cocoa Frameworks in Using Swift with Cocoa and Objective-C (Swift 4.1).
FoundationフレームワークへのSwiftオーバーレイは、Notification
構造体を提供します、それはNSNotification
クラスにブリッジします。値型についてのさらなる情報として、Working with Cocoa FrameworksをUsing Swift with Cocoa and Objective-C (Swift 4.1)で見てください。
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 is
, because pointer equality doesn’t make sense across process boundaries.
ある通知のオブジェクトは、ローカル通知に対してポインタ同等性を使って比較されます。配達される通知は、文字列をそれらのオブジェクトとして使います、そしてそれらの文字列はis
を使って比較されます、なぜならポインタ同等性はプロセス境界を越えて意味をなしません。
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
のサブクラスを作って、通知の名前、オブジェクト、そして辞書に加えて情報を含むことができます。この余分なデータは、通知とオブザーバの間で意見が一致していなければなりません。
NSNotification
is a class cluster with no instance variables. As such, you must subclass NSNotification
and override the primitive methods name
, object
, and user
. 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).
NSNotification
は、インスタンス変数を持たないあるクラスクラスタです。そういうものとして、あなたはNSNotification
のサブクラスを作成して、根本的メソッドname
、object
、そしてuser
をオーバーライドしなければなりません。あなたは、あなたの好きな何らかの指定イニシャライザを選ぶことができます、しかしあなたのイニシャライザがinit
をsuper
上で呼び出さないことを確実にしてください(NSNotification
は直接にインスタンス化されることになっていません、そしてそれのinit
メソッドは例外を引き起こします)。
- init
- initWithCoder:
+ notificationWithName:object:
+ notificationWithName:object:userInfo:
- initWithName:object:userInfo:
NSNotificationName
NSNotificationCenter
NSNotificationQueue