Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/114.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 将UISwitch的状态写入文件_Ios_Objective C_Xcode_Ipad_Uiswitch - Fatal编程技术网

Ios 将UISwitch的状态写入文件

Ios 将UISwitch的状态写入文件,ios,objective-c,xcode,ipad,uiswitch,Ios,Objective C,Xcode,Ipad,Uiswitch,我正试图将UISwitch的状态写入文件,因此每次应用程序启动时,它都会记住以前是打开还是关闭的 -(IBAction) switchValueChanged { if (Hard1ON.on) { isH1 = (@"YES"); //save above yes to file 经过一点搜索,我发现这是一段用于保存到文件的代码: - (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile e

我正试图将UISwitch的状态写入文件,因此每次应用程序启动时,它都会记住以前是打开还是关闭的

-(IBAction) switchValueChanged {
   if (Hard1ON.on) {
   isH1 = (@"YES");
   //save above yes to file
经过一点搜索,我发现这是一段用于保存到文件的代码:

- (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile encoding:(NSStringEncoding)enc error:(NSError **)error

但是,它会引发“使用未声明的标识符”writeToFile错误。有人能告诉我出了什么问题吗?

要将文件保存为字符串(可能不是最佳解决方案),请执行以下操作:

将状态写入NSUserDefaults可能是一个更好的主意:

#define kSwitchStateKey @"SwitchState"

- (IBAction)switchValueChanged:(id)sender
{
    [[NSUserDefaults standardUserDefaults]
        setObject:@([sender isOn)
        forKey:kSwitchStateKey
    ];
}            

你能把你正在调用的代码放在代码> >写文件> <代码>吗?你可能想考虑<代码> NSUDER Debug < /代码>:不管怎样,你发布的代码与错误无关:请看LXT的评论。只是熟悉了NSUserDefaults,看起来你是对的,非常感谢你的帮助。
#define kSwitchStateKey @"SwitchState"

- (IBAction)switchValueChanged:(id)sender
{
    [[NSUserDefaults standardUserDefaults]
        setObject:@([sender isOn)
        forKey:kSwitchStateKey
    ];
}