Comment charger des images et des vidéos dans la même UICollectionView dans iOS
Je suis en train d'avoir une vue de collection qui peut montrer toutes les images et vidéos de rouleau appareil photo en fonction horodatage.
Je ne peux charger que des images ou seulement des vidéos, pas les deux.
j'ai essayé ci-dessous le code
var photos: PHFetchResult<PHAsset>! // user photos array in collectionView for disaplying video thumnail
func getAssetFromPhoto() {
let options = PHFetchOptions()
options.sortDescriptors = [ NSSortDescriptor(key: "creationDate", ascending: true) ]
options.predicate = NSPredicate(format: "mediaType = %d", PHAssetMediaType.video.rawValue)
photos = PHAsset.fetchAssets(with: options)
print(photos)
photoCollectionView.reloadData() // reload your collectionView
}
Comme vous pouvez le voir dans le code ci-dessus snipped, lors de la définition des options que nous ne pouvons demander collection vidéo ou collection d'images.
Comment puis-je combiner les deux. S'il vous plaît noter: je suis ouvert à toute sorte de suggestion de développement et comme une solution de contournement, je combine à PHFetchResult dans une collection et de remplir ma vue de collection.
Est-ce le seul moyen? ou Apple fournit-il une API pour la même chose.
J'essaie votre solution de bons conseils, ne m'a pas traversé l'esprit! reviendra à voter –
Vous voulez probablement un prédicat OR, car (type == Image AND type == Movie) est garanti être l'ensemble vide, c'est-à-dire zéro élément. Essayez: 'NSCompoundPredicate (ouPredicateWithSubpredicates: [videoPredicate, imagePredicate])'. – prewett