(void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
[[PHPhotoLibrary sharedPhotoLibrary] registerChangeObserver:self];
}
(void)photoLibraryDidChange:(PHChange *)changeInstance{
//PHFetchResultChangeDetails result = [changeInstance changeDetailsForFetchResult:<#(nonnull PHFetchResult )#>];//这个对象该如何获取呢?
//PHFetchResultChangeDetails albumChanges = [changeInstance changeDetailsForObject:<#(nonnull PHObject )#>];//这个对象该如何获取呢?
如上所述,这个需求是当相册的图片发生变化时,就会跳用这个方法,但是我不知道以上两个方法所传的参数是怎么获取,请求帮忙,谢谢。
}
PHFetchResult
可以把它看做是一个由PHAsset
填充的数组,跟NSArray
的用法类似。有关此对象的获取可以通过PHAsset
的实例方法获得。PHObject
是PHAsset
的抽象父类,有用的属性只有一个localIdentifier
,意思就是图片资源的标识符,所以也可以通过这个属性来获得PHFetchResult
集合物件。其他的主要用法可以參考官方文件 Photos
也歡迎參考我寫的 PhotoKit 實際專案應用的文章:Photos Framework使用小記