共用方式為


ALAssetsLibrary.ChangedNotification 屬性

定義

已變更的通知常數

[Foundation.Advice("Use ALAssetsLibrary.Notifications.ObserveChanged helper method instead.")]
[Foundation.Field("ALAssetsLibraryChangedNotification", "AssetsLibrary")]
public static Foundation.NSString ChangedNotification { get; }
member this.ChangedNotification : Foundation.NSString

屬性值

NSString 常數應作為 NSNotificationCenter 的權杖使用。

屬性

備註

這個常數可以與 搭配 NSNotificationCenter 使用,以註冊此通知的接聽程式。 這是 NSString 而不是字串,因為這些值可以當做某些原生程式庫中的標記使用,而不是單純用於其實際字串內容。 回呼的 'notification' 參數包含通知類型特有的額外資訊。

如果您想要訂閱此通知,您可以使用方便 ALAssetsLibrary.Notifications 的 。 ObserveChanged 方法提供通知參數的強型別存取。

下列範例示範如何使用強型別的 Notifications 類別,將猜測從通知中的可用屬性中取出:

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

下列範例示範如何搭配 DefaultCenter API 使用通知:

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


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

void Setup ()
{
    NSNotificationCenter.DefaultCenter.AddObserver (ALAssetsLibrary.ChangedNotification, Callback);
}

適用於