Partager via


AVAudioSession.RouteChangeNotification Propriété

Définition

Constante de notification pour RouteChange

[Foundation.Advice("Use AVAudioSession.Notifications.ObserveRouteChange helper method instead.")]
[Foundation.Field("AVAudioSessionRouteChangeNotification", "AVFoundation")]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 6, 0, ObjCRuntime.PlatformArchitecture.All, null)]
public static Foundation.NSString RouteChangeNotification { [ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 6, 0, ObjCRuntime.PlatformArchitecture.All, null)] get; }
member this.RouteChangeNotification : Foundation.NSString

Valeur de propriété

La constante NSString doit être utilisée comme jeton pour NSNotificationCenter.

Attributs

Remarques

Cette constante peut être utilisée avec pour NSNotificationCenter inscrire un écouteur pour cette notification. Il s’agit d’un NSString au lieu d’une chaîne, car ces valeurs peuvent être utilisées comme jetons dans certaines bibliothèques natives au lieu d’être utilisées uniquement pour leur contenu de chaîne réel. Le paramètre « notification » du rappel contient des informations supplémentaires spécifiques au type de notification.

Pour s’abonner à cette notification, les développeurs peuvent utiliser la méthode pratique AVAudioSession.Notifications.ObserveRouteChange qui offre un accès fortement typé aux paramètres de la notification.

L’exemple suivant montre comment utiliser la classe Notifications fortement typée pour extraire les suppositions des propriétés disponibles dans la notification :

//
// 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 ();
}

L’exemple suivant montre comment utiliser la notification avec l’API DefaultCenter :

// Lambda style
NSNotificationCenter.DefaultCenter.AddObserver (
        AVAudioSession.RouteChangeNotification, (notification) => {Console.WriteLine ("Received the notification AVAudioSession", notification); }


// Method style
void Callback (NSNotification notification)
{
    Console.WriteLine ("Received a notification AVAudioSession", notification);
}

void Setup ()
{
    NSNotificationCenter.DefaultCenter.AddObserver (AVAudioSession.RouteChangeNotification, Callback);
}

S’applique à