Поделиться через


AVAudioSession.Notifications.ObserveInterruption Метод

Определение

Перегрузки

ObserveInterruption(EventHandler<AVAudioSessionInterruptionEventArgs>)

Строго типизированное уведомление для константы InterruptionNotification .

ObserveInterruption(NSObject, EventHandler<AVAudioSessionInterruptionEventArgs>)

Строго типизированное уведомление для константы InterruptionNotification .

ObserveInterruption(EventHandler<AVAudioSessionInterruptionEventArgs>)

Строго типизированное уведомление для константы InterruptionNotification .

public static Foundation.NSObject ObserveInterruption (EventHandler<AVFoundation.AVAudioSessionInterruptionEventArgs> handler);
static member ObserveInterruption : EventHandler<AVFoundation.AVAudioSessionInterruptionEventArgs> -> Foundation.NSObject

Параметры

handler
EventHandler<AVAudioSessionInterruptionEventArgs>

Метод, вызываемый при публикации уведомления.

Возвращаемое значение

Объект токена, который можно использовать для прекращения получения уведомлений путем удаления или передачи в RemoveObservers(IEnumerable<NSObject>)

Комментарии

В следующем примере показано, как разработчики могут использовать этот метод в своем коде:

//
// Lambda style
//

// listening
notification = AVAudioSession.Notifications.ObserveInterruption ((sender, args) => {
    /* Access strongly typed args */
    Console.WriteLine ("Notification: {0}", args.Notification);

    Console.WriteLine ("InterruptionType", args.InterruptionType);
    Console.WriteLine ("Option", args.Option);
    Console.WriteLine ("WasSuspended", args.WasSuspended);
});

// To stop listening:
notification.Dispose ();

//
//Method style
//
NSObject notification;
void Callback (object sender, AVFoundation.AVAudioSessionInterruptionEventArgs args)
{
    // Access strongly typed args
    Console.WriteLine ("Notification: {0}", args.Notification);

    Console.WriteLine ("InterruptionType", args.InterruptionType);
    Console.WriteLine ("Option", args.Option);
    Console.WriteLine ("WasSuspended", args.WasSuspended);
}

void Setup ()
{
    notification = AVAudioSession.Notifications.ObserveInterruption (Callback);
}

void Teardown ()
{
    notification.Dispose ();
}

Применяется к

ObserveInterruption(NSObject, EventHandler<AVAudioSessionInterruptionEventArgs>)

Строго типизированное уведомление для константы InterruptionNotification .

public static Foundation.NSObject ObserveInterruption (Foundation.NSObject objectToObserve, EventHandler<AVFoundation.AVAudioSessionInterruptionEventArgs> handler);
static member ObserveInterruption : Foundation.NSObject * EventHandler<AVFoundation.AVAudioSessionInterruptionEventArgs> -> Foundation.NSObject

Параметры

objectToObserve
NSObject

Конкретный объект для наблюдения.

handler
EventHandler<AVAudioSessionInterruptionEventArgs>

Обработчик, который реагирует на уведомление при его возникновении.

Возвращаемое значение

Объект токена, который можно использовать для прекращения получения уведомлений путем удаления или передачи в RemoveObservers(IEnumerable<NSObject>)

Комментарии

Этот метод можно использовать для подписки на InterruptionNotification уведомления.

// Listen to all notifications posted for any object
var token = AVAudioSession.Notifications.ObserveInterruption ((notification) => {
	Console.WriteLine ("Observed InterruptionNotification!");
};

// Listen to all notifications posted for a single object
var token = AVAudioSession.Notifications.ObserveInterruption (objectToObserve, (notification) => {
	Console.WriteLine ($"Observed InterruptionNotification for {nameof (objectToObserve)}!");
};

// Stop listening for notifications
token.Dispose ();

Применяется к