ALAssetsLibrary更改了通知未在ios5中触发?

时间:2012-02-20 06:19:01

标签: iphone objective-c ios cocoa-touch ios5

我已经在ios4中实现了ALAssetsLibraryChangedNotification并且它运行得很好,但是现在在ios5中它似乎被忽略了。我补充说:

 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(ALAssetsLibraryChangedNotification) name: ALAssetsLibraryChangedNotification object:self.library]; 

在我的视图控制器初始化程序中,在dealloc中我放了:

[[NSNotificationCenter defaultCenter] removeObserver:self name:ALAssetsLibraryChangedNotification object:nil];

然后,methdod实现本身就是:

- (void) ALAssetsLibraryChangedNotification
{
//doSomeStuff

}

我需要在初始化程序中添加它并在dealloc中将其删除,以便在用户从应用程序中更改库时更新它。任何人都知道一个很好的解决方案吗?

1 个答案:

答案 0 :(得分:4)

我认为他的意思是:

  1. 调用[self.assetsLibrary writeImageToSavedPhotosAlbum:nil metadata:nil completionBlock:^(NSURL * assetURL,NSError * error){}];创建ALAssetsLibrary实例后立即
  2. 观察 ALAssetsLibraryChangedNotification (不是NSManagedObjectContextObjectsDidChangeNotification)