NSString constant, should be used as a token to NSNotificationCenter.
This constant can be used with the MonoTouch.Foundation.NSNotificationCenter to register a listener for this notification. This is an NSString instead of a string, because these values can be used as tokens in some native libraries instead of being used purely for their actual string content. The 'notification' parameter to the callback contains extra information that is specific to the notification type.
If you want to subscribe to this notification, you can use the convenience NSLocale.Notifications.NSLocale.Notifications.ObserveCurrentLocaleDidChange method which offers strongly typed access to the parameters of the notification.
The following example shows how to use the strongly typed Notifications class, to take the guesswork out of the available properties in the notification:
c# Example
//
// Lambda style
//
// listening
notification = NSLocale.Notifications.ObserveCurrentLocaleDidChange ((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, CurrentLocaleDidChange args)
{
// Access strongly typed args
Console.WriteLine ("Notification: {0}", args.Notification);
}
void Setup ()
{
notification = NSLocale.Notifications.ObserveCurrentLocaleDidChange (Callback);
}
void Teardown ()
{
notification.Dispose ();
}The following example shows how to use the notification with the DefaultCenter API:
c# Example
// Lambda style
NSNotificationCenter.DefaultCenter.AddObserver (
NSLocale.CurrentLocaleDidChangeNotification, (notification) => {Console.WriteLine ("Received the notification NSLocale", notification); }
// Method style
void Callback (NSNotification notification)
{
Console.WriteLine ("Received a notification NSLocale", notification);
}
void Setup ()
{
NSNotificationCenter.DefaultCenter.AddObserver (NSLocale.CurrentLocaleDidChangeNotification, Callback);
}