如何删除Swift iOS8中的最后一张照片?
我试图从相机胶卷上得到最后一张照片并删除它。现在我得到最后一张照片,但在删除最后一张照片时遇到问题。 我试过这种方式,但是我删除了所有的照片,所以我打算构build一个新的PHFetchResult,它只包含最后一张照片,但我不知道该怎么做。
PHPhotoLibrary.sharedPhotoLibrary().performChanges( { PHAssetChangeRequest.deleteAssets(fetchResult)}, completionHandler: { success, error in NSLog("Finished deleting asset. %@", (success ? "Success" : error)) })
感谢大家回答我的问题!
我想问题在于你的fetchResult
。 您将不得不传递仅包含来自照片库的最新图像的数组。
尝试制作如下的数组 –
var fetchOptions: PHFetchOptions = PHFetchOptions() fetchOptions.sortDescriptors = [NSSortDescriptor(key: "creationDate", ascending: true)] var fetchResult = PHAsset.fetchAssetsWithMediaType(PHAssetMediaType.Image, options: fetchOptions) if (fetchResult.lastObject != nil) { var lastAsset: PHAsset = fetchResult.lastObject as PHAsset let arrayToDelete = NSArray(object: lastAsset) PHPhotoLibrary.sharedPhotoLibrary().performChanges( { PHAssetChangeRequest.deleteAssets(arrayToDelete)}, completionHandler: { success, error in NSLog("Finished deleting asset. %@", (success ? "Success" : error)) }) }
看到这个链接 。