Nur auf iPad-Geräten und nur in der neuesten Version 9.3, wenn Sie [PHCachingImageManager requestImageForAsset:] mit einer legitimen Zielgröße (CGSize) aufrufen, wird kein gültiges Bild zurückgegeben. Zum Beispiel ...PHCachingImageManager-Problem auf dem iPad unter iOS 9.3
PHAsset *asset = self.assetsFetchResults[indexPath.item];
[self.imageManager requestImageForAsset:asset
targetSize:CGSizeMake(101, 101)
contentMode:PHImageContentModeAspectFill
options:nil
resultHandler:^(UIImage *result, NSDictionary *info) {
cell.defectImageView.image = result;
}];
wird kein Bild zurückgeben. Dies ist in einer Sammlungsansicht, so dass das Bild der Zelle nur schwarz ist. Wenn Sie jedoch die Zielgröße auf 190,190 erhöhen, werden einige der Bilder vom Gerät zurückgegeben, aber nicht alle. Wenn die Zielgröße auf 501, 501 erhöht wird, werden alle Bilder korrekt zurückgegeben.
Offensichtlich wurden die Mindestanforderungen für targetSize geändert, aber es scheint nicht dokumentiert zu sein. Wenn ich das auf einem iPad mit iOS 9.2.1 starte, funktioniert das ohne Probleme. Hat das noch jemand erlebt?
ein Radar-Filing aber wollte prüfen ...
In meinem Fall hat PHImageManager.defaultManager(). RequestImageForAsset das gleiche Problem. – user872176
Ich habe ein Radar mit Apple geöffnet, sie fragen mich nach einem Testprojekt, das das Problem reproduziert. Ich habe ein neues Projekt erstellt und bin nicht in der Lage, es erneut zu erstellen. Es könnte also etwas Einzigartiges für meinen Code sein. Wird hier aktualisiert, wenn ich mehr weiß ... – user636066