當我推出一個照片取象:獲取使用PHAssetCollection.fetchAssetCollectionsWithType在迅速從特定相冊的照片()
let assetCollections: PHFetchResult = PHAssetCollection.fetchAssetCollectionsWithType(.SmartAlbum, subtype: .Any, options: nil)
我得到幾張專輯的結果,這樣我就可以通過數組進行迭代,並把自己的冠軍在一個tableView中。
但是:當我使用一個謂詞來過濾並獲得例如專輯「Camera Roll」時,結果總是一個空數組:(並且我知道100%確定Camera Roll存在,因爲它沒有提取它的零選項)
let fetchOptions = PHFetchOptions()
fetchOptions.predicate = NSPredicate(format: "title = %@", "Camera Roll")
let assetCollections: PHFetchResult = PHAssetCollection.fetchAssetCollectionsWithType(.SmartAlbum, subtype: .Any, options: fetchOptions)
let album: PHAssetCollection = assetCollections.firstObject as! PHAssetCollection
我讀過的人4或5個不同的方法在網上,他們都有這個斷言是否符合 「稱號=%@」,或 「localizedTitle =%@」 或 「localizedIdentifier =%@」 ...我沒有得到它。似乎爲人們工作,而不是爲我工作。編譯器在試圖「解包無可選值」的最後一行崩潰('取得結果爲空')。爲什麼只要包含提取選項,搜索就返回零?
雖然這段代碼可能會回答這個問題,但最好解釋它如何解決問題而不介紹其他人以及爲什麼要使用它。從長遠來看,僅有代碼的答案是沒有用的。 – JAL