我有一个应用程序,它将Web图像设置为主页的背景。从下次加载主页背景时,我的应用程序只存储带有地址的名称。这是我的代码:
Sqlite *sqlite = [[Sqlite alloc] init];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, SUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *writableDBPath = [documentsDirectory stringByAppendingPathComponent:@"Database.db"];
if (![sqlite open:writableDBPath])
return;
NSURL *url = [NSURL URLWithString:@"http://mmabigshow.com/app/admin/ring_girl_demo.php"];
NSString *greeting = [[NSString alloc] initWithContentsOfURL:url];
NSString *string1 = @"";
string1 = [NSString stringWithFormat:@"UPDATE mma_bg_image SET image='%@' where id='1';", greeting];
我想要做的是,当我将一些图像设置为背景时,它应该作为UIImage对象存储在手机的本地数据库中,以便从下次开始加载更快。 我应该使用Sqlite吗?请将流程的总源代码粘贴给我。
答案 0 :(得分:11)
为什么不将图像存储在文件系统中? 当然,您可以将其存储到数据库中,但它不会使您的应用程序更快。 在插入之前,您必须使用NSData对文件进行编码,然后在显示之前对其进行解码 我会将文件存储在文件系统中,只保留数据库中的路径。
修改强>
你真的,布拉德
答案 1 :(得分:4)
我提供了代码,用于在this answer中的SQLite数据库中存储UIImages并加载它们。
此致,另一位布拉德