Как добавить массив изображений в альбом с помощью платформы Photoshop в IOS?
Я пытаюсь интегрировать DKImagePicker в свое приложение, потому что оно просто выглядит лучше. Когда пользователь выбирает альбом, я хочу, чтобы приложение сохраняло выбранные пользователем изображения в новой папке, которую я создал. Вот как я пытаюсь обработать сохранение:
...
@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?
Надеюсь, я достаточно ясно дал понять. Если нет, пожалуйста, дайте мне знать, чтобы я мог уточнить мой вопрос.
1 ответ
Видимо ошибка вводит в заблуждение. Все, чего не хватало, чтобы сделать эту работу, это !
за assetPlaceholder
, Так что все, что я сделал, это заменил albumChangeRequest?.addAssets([assetPlaceholder])
с albumChangeRequest?.addAssets([assetPlaceholder!])