Я пытаюсь интегрировать DKImagePicker в свое приложение, потому что оно просто выглядит лучше. Когда пользователь выбирает альбом, я хочу, чтобы приложение сохраняло изображения, которые пользователь выбрал, в новой папке, которую я создал. Вот как я пытаюсь справиться сохранения:Как добавить массив изображений в альбом с использованием фреймворка фотографий в IOS?
...
@IBAction func openAlbum(sender: AnyObject) {
// pickerController is DKImagePickerController
pickerController.didSelectAssets = { [unowned self] (asset: [DKAsset]) in
print("didSelectAssets")
self.transferSelectedAssetsToAlbum(asset)
}
self.presentViewController(pickerController, animated: true, completion: nil)
}
func transferSelectedAssetsToAlbum(assets: [DKAsset]) {
PHPhotoLibrary.sharedPhotoLibrary().performChanges({
// Here I want to save all items in assets in the album
for asset in assets {
let createAssetRequest = PHAssetChangeRequest.creationRequestForAssetFromImage(asset.fullScreenImage!)
let assetPlaceholder = createAssetRequest.placeholderForCreatedAsset
let albumChangeRequest = PHAssetCollectionChangeRequest(forAssetCollection: self.assetCollection)
albumChangeRequest?.addAssets([assetPlaceholder])
}
}, completionHandler: {
success, error in
print(success)
print(error)
})
}
...
При выполнении этого Xcode, он жалуется говоря 'NSFastEnumeration' cannot be used with array litteral
. Я понимаю, что это из-за albumChangeRequest?.addAssets([assetPlaholder])
не должно быть ниже for .. in
. Но я хочу сохранить все изображения в активах? Как я могу заставить его работать без цикла for?
Надеюсь, я сделал это достаточно ясно. Если нет, сообщите мне, чтобы я мог уточнить свой вопрос.