我一直在尝试保存用户选择的图片。这是我的保存代码:
-(IBAction)save123456 {
NSUserDefaults *myname = [NSUserDefaults standardUserDefaults];
[myname setObject:noteview.image forKey:@"name"];
}
这似乎有效,但让我知道我是否应该改变任何事情。现在这是我的加载代码。
-(IBAction)load123456 {
NSUserDefaults *myname = [NSUserDefaults standardUserDefaults];
NSString *tempstring = [myname stringForKey:@"name"];
noteview.image = tempstring;
}
当我点击加载按钮时,图像就会消失。怎么了。
我通过触摸切割连接所有东西,这有关系吗?
感谢!!!
答案 0 :(得分:1)
这一行:
noteview.image = tempstring;
正在为“NSString
”分配“UIImage
”。
编辑:现在我意识到你在做什么,you can not save a UIImage to a simple plist database like user defaults。
您需要单独保存文件,然后将路径保存并加载到文件中,或者需要保存并加载原始数据(即“NSData
”)图像到用户默认值。
P.S。您选择的变量名称令人困惑。而不是“myname”,使用“myDefaults”而不是“tempname”,使用“nameImage”(即更具描述性和可理解性的东西)。