0
我开始学习斯威夫特,目前就读于类,这是构建适用于iOS的应用程序。我试图获取的照片,并把它们在的CollectionView和它的的Xcode模拟器的罚款。然而,我发现,当我试图在iPhone的collectionView
甚至不加载。请求图像的代码就像这样。与上传照片的相册工作的UICollectionView
let imgManager = PHImageManager.default()
let requestOptions = PHImageRequestOptions()
requestOptions.isSynchronous = true
requestOptions.deliveryMode = .highQualityFormat
请求选项:
let fetchOptions = PHFetchOptions()
fetchOptions.sortDescriptors = [NSSortDescriptor(key: "creationDate", ascending: true)]
if let fetchResult :PHFetchResult = PHAsset.fetchAssets(with: .image , options: fetchOptions) {
if fetchResult.countOfAssets(with: PHAssetMediaType.image) > 0 {
for i in 0..<fetchResult.count{
imgManager.requestImage(for: fetchResult.object(at: i) as! PHAsset, targetSize: CGSize(width: 200, height: 200), contentMode: .aspectFill, options: requestOptions, resultHandler: {image, Error in
self.imageArray.append(image!)
self.PHArray.append(fetchResult.object(at: i))
print("Success")
})
}
不知怎的,在iPhone它仍然会索取照片,但不会显示collectionView
。我对编码很陌生,我不确定这是否合适。这将非常令人高兴,任何真诚的建议都会受到欢迎。
而发生了什么?你是否打印(“成功”)?我期望如果它确实需要用'.reloadData()'重新加载集合视图' – Grimxn
你是否认为它的打印效果非常好?当有更多图片时,他们上传时间过长。我尝试过,但似乎没有工作。 – Chajunhyung