次の方法で共有


AVAudioSession.Notifications.ObserveRouteChange メソッド

定義

オーバーロード

ObserveRouteChange(EventHandler<AVAudioSessionRouteChangeEventArgs>)

定数に対して RouteChangeNotification 厳密に型指定された通知。

ObserveRouteChange(NSObject, EventHandler<AVAudioSessionRouteChangeEventArgs>)

定数に対して RouteChangeNotification 厳密に型指定された通知。

ObserveRouteChange(EventHandler<AVAudioSessionRouteChangeEventArgs>)

定数に対して RouteChangeNotification 厳密に型指定された通知。

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

パラメーター

handler
EventHandler<AVAudioSessionRouteChangeEventArgs>

通知が投稿されたときに呼び出すメソッド。

戻り値

通知を破棄するか、またはに渡すことによって通知の受信を停止するために使用できるトークン オブジェクト RemoveObservers(IEnumerable<NSObject>)

注釈

次の例は、開発者がコードでこのメソッドを使用する方法を示しています。

//
// Lambda style
//

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

    Console.WriteLine ("Reason", args.Reason);
    Console.WriteLine ("PreviousRoute", args.PreviousRoute);
});

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

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

    Console.WriteLine ("Reason", args.Reason);
    Console.WriteLine ("PreviousRoute", args.PreviousRoute);
}

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

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

適用対象

ObserveRouteChange(NSObject, EventHandler<AVAudioSessionRouteChangeEventArgs>)

定数に対して RouteChangeNotification 厳密に型指定された通知。

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

パラメーター

objectToObserve
NSObject

観察する特定のオブジェクト。

handler
EventHandler<AVAudioSessionRouteChangeEventArgs>

通知が発生したときに応答するハンドラー。

戻り値

通知を破棄するか、またはに渡すことによって通知の受信を停止するために使用できるトークン オブジェクト RemoveObservers(IEnumerable<NSObject>)

注釈

このメソッドは、通知を RouteChangeNotification サブスクライブするために使用できます。

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

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

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

適用対象