ios - 关于使用Photos.framework对相册变化的观察

【字号: 日期:2023-12-29浏览:60作者:雯心

问题描述

(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 )#>];//这个对象该如何获取呢?

如上所述,这个需求是当相册的图片发生变化时,就会跳用这个方法,但是我不知道以上两个方法所传的参数是怎么获取,请求帮忙,谢谢。

}

问题解答

回答1:

PHFetchResult 可以把它看做是一个由 PHAsset 填充的数组,跟 NSArray 的用法类似。有关此对象的获取可以通过 PHAsset 的实例方法获得。PHObject 是 PHAsset 的抽象父类,有用的属性只有一个 localIdentifier ,意思就是图片资源的标识符,所以也可以通过这个属性来获得 PHFetchResult 集合对象。

其他的主要用法可以参考官方文档 Photos也欢迎参考我写的 PhotoKit 实际项目应用的文章:Photos Framework使用小记

相关文章: