У меня есть PHAssetCollection (настроенный фотоальбом), и я хочу удалить все изображения в этом альбоме.
Я пытаюсь выполнить цикл while для удаления каждого актива, содержащегося в коллекции, но я не могуЯ сталкиваюсь с несколькими проблемами.
Вот мой код:
var iter: Int = 0;
let myGroup = DispatchGroup()
while(iter < self.photosAsset.count){
myGroup.enter()
print("Deleting Asset \(iter):\(self.photosAsset[iter].description)")
PHPhotoLibrary.shared().performChanges({PHAssetChangeRequest.deleteAssets([self.photosAsset[iter]] as NSArray)
}, completionHandler: {(success, error) -> Void in
if success {
print("Asset \(iter) deleted")
myGroup.leave()
} else {
print("Error: \(String(describing: error))")
}
})
iter=iter+1;
}//end while
Вот проблемы, с которыми я сталкиваюсь:
Я сталкиваюсьИндекс исключения (x) за пределами (x), тогда как у меня есть 4 фотографии в альбоме, и я выхожу из цикла while, когда это <4 </p>
, удаления не синхронизируются (даже если яЯ использую DispatchGroup)
У меня есть запрос на удаление только первого изображения каждый раз (если я изменяю свой выходной цикл while на count-1)
есть ли другой способ просто удалить каждый актив в коллекции?