在iphone中我要求在缓存中存储图像。
但我如何将其存储在缓存中。
我知道缓存的文件夹路径。这是我必须在该文件夹中写入我的图像以进行缓存的唯一方法吗?
我想知道其他任何方式。或者这是正确的方法吗? 请帮帮我。
答案 0 :(得分:2)
您可以使用NSArchiver
和NSUnarchiver
以这种方式将数据存储在本地磁盘上:
//在缓存中设置您的图片
NSData *imgData = [NSKeyedArchiver archivedDataWithRootObject:myImage];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:imgData forKey:@"img_01"];
[defaults synchronize];
//从缓存中获取您的图片
NSData *imgData = [[NSUserDefaults standardUserDefaults] objectForKey:@"img_01"];
myImage = [NSKeyedUnarchiver unarchiveObjectWithData:imgData];
在这里引用苹果:http://goo.gl/XH2o2
希望这会有所帮助。
答案 1 :(得分:0)
使用此链接..
编辑http://www.makebetterthings.com/iphone/image-caching-in-iphone-sdk/
:
使用此代码获取文件路径并获取特定文件:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);
NSString *libraryDirectory = [paths objectAtIndex:0];