Как добавить массив изображений в альбом с помощью платформы 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!])

Другие вопросы по тегам