Галерея Swift ошибается, ни один участник, как использовать 'init (forAssetCollection: assets :)' был заменен на 'init (for: assets :)' - PullRequest
0 голосов
/ 13 июня 2018

Я работаю над приложением для своей школы, но, к сожалению, я не успеваю, потому что у меня есть несколько ошибок.Может кто-нибудь помочь мне, пожалуйста?

Вот изображение ошибок в коде. введите описание изображения здесь

Вот мои ошибки:

  1. Значение типа 'ViewController' не имеет члена 'assetCollectionPlaceholder'
  2. Значениетип 'ViewController' не имеет члена 'assetCollectionPlaceholder'
  3. Значение типа 'ViewController' не имеет члена 'image'
  4. 'init (forAssetCollection: assets :)' заменено на 'init (for: assets:) '
  5. Значение типа' ViewController 'не имеет члена' showImages '

Вот код вверху:

import UIKit
import Photos
var image: UIImage!
var assetCollection: PHAssetCollection!
var albumFound : Bool = false
var photosAsset: PHFetchResult<AnyObject>!
var assetThumbnailSize:CGSize!
var collection: PHAssetCollection!
var assetCollectionPlaceholder: PHObjectPlaceholder!

Вот код:

    func createAlbum() {
        //Get PHFetch Options
        stronglet fetchOptions = PHFetchOptions()
        fetchOptions.predicate = NSPredicate(format: "title = %@", "camcam")
        let collection : PHFetchResult = PHAssetCollection.fetchAssetCollections(with: .album, subtype: .any, options: fetchOptions)
        //Check return value - If found, then get the first album out
        if let _: AnyObject = collection.firstObject {
            self.albumFound = true
            assetCollection = collection.firstObject as! PHAssetCollection
        } else {
            //If not found - Then create a new album
            PHPhotoLibrary.shared().performChanges({
                let createAlbumRequest : PHAssetCollectionChangeRequest = PHAssetCollectionChangeRequest.creationRequestForAssetCollection(withTitle: "camcam")
               self.assetCollectionPlaceholder = createAlbumRequest.placeholderForCreatedAssetCollection   
            }, completionHandler: { success, error in
                self.albumFound = success

                if (success) {
                    let collectionFetchResult = PHAssetCollection.fetchAssetCollectionsWithLocalIdentifiers([self.assetCollectionPlaceholder.localIdentifier], options: nil)
                    print(collectionFetchResult)
                    self.assetCollection = collectionFetchResult.firstObject as! PHAssetCollection
                }
            })
        }
    }

    func saveImage(){
        PHPhotoLibrary.shared().performChanges({
            let assetRequest = PHAssetChangeRequest.creationRequestForAssetFromImage(atFileURL: self.image)
            let assetPlaceholder = assetRequest.placeholderForCreatedAsset
            let albumChangeRequest = PHAssetCollectionChangeRequest(forAssetCollection: self.assetCollection, assets: self.photosAsset as! PHFetchResult<PHAsset>)
            albumChangeRequest!.addAssets([assetPlaceholder!])
        }, completionHandler: { success, error in
            print("added image to album")
            print(error as Any)

            self.showImages()
        })
    }
...