我想知道如何从图库中检索图像并将其路径保存在本地数据库中。在此过程之后,我希望我使用了本地数据库映像路径中的映像。请帮忙!
感谢。
答案 0 :(得分:0)
关于sqlite和图片
在sqlite中存储路径(与图像相对)是有道理的。或者您可以考虑使用Core Data。现在核心数据提供了在外部存储中存储图像或其他大数据的能力(基本上抽象出了找到自己的目录,获取路径,存储路径等的需要)。我赞成它。
下面的代码假设你可以处理sqlite的混乱细节,或者使用一些库作为原始实现的包装器。
在本地存储图片
您可以决定将图像存储在应用文件系统中的位置。假设您要使用文档目录:
- (NSURL *)applicationDocumentsDirectory
{
return [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject];
}
为了便于说明,我们还假设这些是png格式:
- (NSString *)pathForImageNamed:(NSString *)imageName {
return [[self applicationDocumentsDirectory] stringByPathComponent:imageName];
}
- (void)saveImage:(UIImage *)image name:(NSString *)name {
NSString *path = [self pathForImageNamed:imageName];
[UIImagePNGRepresentation writeToFile:path];
// here, save path to sqlite
}
检索图像
- (UIImage *)imageWithName:(NSString *)imageName {
NSString *imagePath = nil;
// retrieve path name from sqlite db based on image name
return [UIImage imageWithContentsOfFile:imagePath];
}