我有一个应用程序,我从数据库加载大量图像并在我的库中显示它们,我之前做的是我从PHAsset获取照片网址(本地标识符)然后使用PHCacheManager访问图像,但是它会减慢我的滚动速度,并在更新新单元格中的图像时显示滞后。我试图通过将url传递给sd_setImageWithURL:方法来使用SDWebImage,但我发现该URL实际上是该方法不支持的本地标识符。我们是否有其他机制可以使用标识符使用SDWebImage或任何其他框架更快地加载图像。
这是我的代码:
NSURL *photoURL = [NSURL URLWithString:photoPath];
[imageView sd_setImageWithURL:photoURL placeholderImage:defaultImage];
photoPath是我的资产的路径"要加载的当前图像"
我得到的网址类似于:
73F05642-CAE6-49BE-879B-9B00BF15391F / L0 / 001
请询问是否需要更多信息,我是iOS新手以及所有这些东西。在此先感谢:)
答案 0 :(得分:1)
现在已经很晚了,但是我发布它会对其他人有所帮助。
SDWebImageManager * manager = [SDWebImageManager sharedManager];
[manager downloadImageWithURL:[NSURL URLWithString:localIdentifier] options:SDWebImageHighPriority targetLocalAssetSize:CGSizeMake(150, 150) progress:nil completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, BOOL finished, NSURL *imageURL) {
if (image) {
imageview.image = image;
}
}];