gpt4 book ai didi

iphone - NSUserDefaults,取消选中 iPhone 上的凭据删除

转载 作者:行者123 更新时间:2023-12-01 18:31:10 24 4
gpt4 key购买 nike

我使用下面的代码来保存用户名密码,正确保存凭据,但问题是当我再次运行应用程序时,它在文本字段中显示凭据,但复选框仍然为空(我正在使用图像来显示选中和未选中的框)。
我的问题是:
1.如果选中或未选中,我如何保存复选框的状态和
2. 如果未选中,我如何从 nsuserdefaults 中删除凭据。

- (IBAction)checkboxButton:(id)sender{
if (checkboxSelected == 0){
[checkboxButton setSelected:YES];


NSString *user = [userNameField text];

NSString *passwd = [passwordField text];

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

[defaults setObject:user forKey:@"Username"];

[defaults setObject:passwd forKey:@"Password"];

[defaults synchronize];

NSLog(@"Data Saved");

checkboxSelected = 1;

} else {
[checkboxButton setSelected:NO];
checkboxSelected = 0;

//Saving Username Password in file



}

}

谢谢你 ... :)

最佳答案

好吧,您可以将复选框的状态保存在 NSUserDefaults 中。 .

要阅读,请执行以下操作。

BOOL isChecked = [[NSUserDefaults standardUserDefaults] boolForKey:@"loginCheckBox"];

它将返回 NO (false) 如果未设置。
设置状态:
 [[NSUserDefaults standardUserDefaults] setBool:checkboxButton.selected forKey:@"loginCheckBox"];

NSUserDefaults 中删除值只需将属性设置为 nil :
[defaults setObject:nil forKey:@"Username"];
[defaults setObject:nil forKey:@"Password"];

此外,我强烈建议您将密码存储在钥匙串(keychain)中。
因为所有数据都保存在 NSUserDefaults存储纯文本。

您可以使用简单的 SSKeyChain 用于更轻松地访问钥匙串(keychain) API。

关于iphone - NSUserDefaults,取消选中 iPhone 上的凭据删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8644759/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com