Edit

Share via


ALAssetsLibrary.Notifications.ObserveChanged Method

Definition

Overloads

ObserveChanged(EventHandler<ALAssetLibraryChangedEventArgs>)

Strongly typed notification for the ChangedNotification constant.

ObserveChanged(EventHandler<NSNotificationEventArgs>)

Strongly typed notification for the ChangedNotification constant.

ObserveChanged(NSObject, EventHandler<ALAssetLibraryChangedEventArgs>)

Strongly typed notification for the ChangedNotification constant.

ObserveChanged(NSObject, EventHandler<NSNotificationEventArgs>)

Strongly typed notification for the ChangedNotification constant.

ObserveChanged(EventHandler<ALAssetLibraryChangedEventArgs>)

Strongly typed notification for the ChangedNotification constant.

public static Foundation.NSObject ObserveChanged (EventHandler<AssetsLibrary.ALAssetLibraryChangedEventArgs> handler);
static member ObserveChanged : EventHandler<AssetsLibrary.ALAssetLibraryChangedEventArgs> -> Foundation.NSObject

Parameters

handler
EventHandler<ALAssetLibraryChangedEventArgs>

Method to invoke when the notification is posted.

Returns

Token object that can be used to stop receiving notifications by either disposing it or passing it to RemoveObservers(IEnumerable<NSObject>)

Remarks

The following example shows how you can use this method in your code

//
// Lambda style
//

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

    Console.WriteLine ("UpdatedAssets", args.UpdatedAssets);
    Console.WriteLine ("InsertedAssetGroups", args.InsertedAssetGroups);
    Console.WriteLine ("UpdatedAssetGroups", args.UpdatedAssetGroups);
    Console.WriteLine ("DeletedAssetGroupsKey", args.DeletedAssetGroupsKey);
});

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

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

    Console.WriteLine ("UpdatedAssets", args.UpdatedAssets);
    Console.WriteLine ("InsertedAssetGroups", args.InsertedAssetGroups);
    Console.WriteLine ("UpdatedAssetGroups", args.UpdatedAssetGroups);
    Console.WriteLine ("DeletedAssetGroupsKey", args.DeletedAssetGroupsKey);
}

void Setup ()
{
    notification = ALAssetsLibrary.Notifications.ObserveChanged (Callback);
}

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

Applies to

ObserveChanged(EventHandler<NSNotificationEventArgs>)

Strongly typed notification for the ChangedNotification constant.

public static Foundation.NSObject ObserveChanged (EventHandler<Foundation.NSNotificationEventArgs> handler);
static member ObserveChanged : EventHandler<Foundation.NSNotificationEventArgs> -> Foundation.NSObject

Parameters

handler
EventHandler<NSNotificationEventArgs>

Method to invoke when the notification is posted.

Returns

Token object that can be used to stop receiving notifications by either disposing it or passing it to RemoveObservers(IEnumerable<NSObject>)

Remarks

The following example shows how you can use this method in your code

//
// Lambda style
//

// listening
notification = ALAssetsLibrary.Notifications.ObserveChanged ((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 = ALAssetsLibrary.Notifications.ObserveChanged (Callback);
}

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

Applies to

ObserveChanged(NSObject, EventHandler<ALAssetLibraryChangedEventArgs>)

Strongly typed notification for the ChangedNotification constant.

public static Foundation.NSObject ObserveChanged (Foundation.NSObject objectToObserve, EventHandler<AssetsLibrary.ALAssetLibraryChangedEventArgs> handler);
static member ObserveChanged : Foundation.NSObject * EventHandler<AssetsLibrary.ALAssetLibraryChangedEventArgs> -> Foundation.NSObject

Parameters

objectToObserve
NSObject

The object to observe.

handler
EventHandler<ALAssetLibraryChangedEventArgs>

Method to invoke when the notification is posted.

Returns

Token object that can be used to stop receiving notifications by either disposing it or passing it to RemoveObservers(IEnumerable<NSObject>)

Remarks

This method can be used to subscribe for ChangedNotification notifications.

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

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

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

Applies to

ObserveChanged(NSObject, EventHandler<NSNotificationEventArgs>)

Strongly typed notification for the ChangedNotification constant.

public static Foundation.NSObject ObserveChanged (Foundation.NSObject objectToObserve, EventHandler<Foundation.NSNotificationEventArgs> handler);
static member ObserveChanged : Foundation.NSObject * EventHandler<Foundation.NSNotificationEventArgs> -> Foundation.NSObject

Parameters

objectToObserve
NSObject

The object to observe.

handler
EventHandler<NSNotificationEventArgs>

Method to invoke when the notification is posted.

Returns

Token object that can be used to stop receiving notifications by either disposing it or passing it to RemoveObservers(IEnumerable<NSObject>)

Remarks

This method can be used to subscribe for ChangedNotification notifications.

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

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

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

Applies to