下面的谓词应该只获取所有的屏幕截图,这很好用。
options.predicate = [NSPredicate predicateWithFormat:@"(mediaSubtype & %d) != 0", PHAssetMediaSubtypePhotoScreenshot];但是,如果我尝试仅通过使用跟随谓词来排除屏幕截图,则会排除所有图像
options.predicate = [NSPredicate predicateWithFormat:@"(mediaSubtype & %d) = 0", PHAssetMediaSubtypePhotoScreenshot]; 我所要做的就是从资产获取中排除screeshots。
这是一个已知的bug,还是我遗漏了什么?
发布于 2016-02-11 19:40:30
我做了一个快速检查,这似乎对我有效:
PHFetchOptions *options = [[PHFetchOptions alloc] init];
options.predicate = [NSPredicate predicateWithFormat:@"(mediaSubtype & %d) == 0", PHAssetMediaSubtypePhotoScreenshot];请注意谓词中的double equal,以进行比较,而不是单个比较。
发布于 2016-06-20 02:36:03
几个小时后,我发现了一个使用NOT操作符的变通方法:
NSPredicate(format: "NOT ((mediaSubtype & %d) != 0)", PHAssetMediaSubtype.PhotoScreenshot.rawValue)https://stackoverflow.com/questions/35229279
复制相似问题