2014-10-22 55 views
0

我有一个与web服务接收图像,并显示他们像一个列表中的应用程序,例如电影院时间表IOS保存图像脱机

我的问题是:是否有可能将图像存储核心数据或其他东西所以我可以告诉他们,当用户没有连接到互联网?

+0

是的,你可以保存图像文件目录并保存在coredata路径。其他选项是你可以使用[SDWebImage](https://github.com/rs/SDWebImage)它会下载镜像并缓存它。 – 2014-10-22 08:01:04

回答

2

是的,你可以。

// Save image to disk 
    NSString *documentaryPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]; 
    NSString *filePath = [NSString stringWithFormat:@"%@/Image.png",documentaryPath]; 
    NSData *data = [NSData dataWithData:UIImagePNGRepresentation(YOUR_IMAGE)]; 
    [data writeToFile:filePath atomically:YES]; 

// Retrieve the Image 
- (NSData *) imageData { 

    NSString *docDir = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]; 

    NSString *pngFilePath = [NSString stringWithFormat:@"%@/Image.png",docDir]; 

    NSData *dataImage = [NSData dataWithContentsOfFile:pngFilePath]; 

    return dataImage; 
} 

后来

UIImage *image = [UIImage imageWithData:imageData] 
1

是的,这是可能的。

您必须下载并保存每个接收到的图像到应用程序目录中,然后在CoreData中保存这些图像的路径。