NSFileHandle.DataAvailableNotification 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
DataAvailable 的通知常數
[Foundation.Advice("Use NSFileHandle.Notifications.ObserveDataAvailable helper method instead.")]
[Foundation.Field("NSFileHandleDataAvailableNotification", "Foundation")]
public static Foundation.NSString DataAvailableNotification { get; }
member this.DataAvailableNotification : Foundation.NSString
屬性值
NSString 常數應該用來做為 NSNotificationCenter 的權杖。
- 屬性
備註
這個常數可以搭配 使用 NSNotificationCenter ,以註冊此通知的接聽程式。 這是 NSString 而非字串,因為這些值可以當做某些原生程式庫中的權杖使用,而不是單純用於其實際字串內容。 回呼的 'notification' 參數包含通知類型特有的額外資訊。
如果您想要訂閱此通知,您可以使用方便 NSFileHandle.Notifications 的 。 ObserveDataAvailable 方法可提供通知參數的強型別存取。
下列範例示範如何使用強型別的 Notifications 類別,來排除通知中可用屬性的猜測:
//
// Lambda style
//
// listening
notification = NSFileHandle.Notifications.ObserveDataAvailable ((sender, args) => {
/* Access strongly typed args */
Console.WriteLine ("Notification: {0}", args.Notification);
});
// To stop listening:
notification.Dispose ();
//
// Method style
//
NSObject notification;
void Callback (object sender, Foundation.NSNotificationEventArgs args)
{
// Access strongly typed args
Console.WriteLine ("Notification: {0}", args.Notification);
}
void Setup ()
{
notification = NSFileHandle.Notifications.ObserveDataAvailable (Callback);
}
void Teardown ()
{
notification.Dispose ();
}
下列範例示範如何搭配 DefaultCenter API 使用通知:
// Lambda style
NSNotificationCenter.DefaultCenter.AddObserver (
NSFileHandle.DataAvailableNotification, (notification) => {Console.WriteLine ("Received the notification NSFileHandle", notification); }
// Method style
void Callback (NSNotification notification)
{
Console.WriteLine ("Received a notification NSFileHandle", notification);
}
void Setup ()
{
NSNotificationCenter.DefaultCenter.AddObserver (NSFileHandle.DataAvailableNotification, Callback);
}