gpt4 book ai didi

cocoa - NSUserDefaults,具有三个选项的一项首选项

转载 作者:行者123 更新时间:2023-12-03 16:44:33 24 4
gpt4 key购买 nike

感谢您的帮助。

我很难接受通过复选框提供三个选项的首选项。更具体地说,控制首选项的三个复选框的 bool 状态之间的关系。我很舒服地设置单个复选框首选项,并且在这个三个选项版本中的个人首选项设置都可以工作。但是我似乎无法让复选框一致地交互。所以一开,两关,等等。

这是我的代码。完成此任务的最佳方法是什么?

谢谢。

保罗

- (BOOL)displayBankOne


{
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
return [defaults boolForKey:PREFdisplayBankOne];

}

- (IBAction)bankOne:(id)sender

{


NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setBool:displayBankOne forKey:PREFdisplayBankOne];

[defaults setBool:displayBankOne forKey:PREFdisplayBankOne];
[defaults setBool:displayBankTwo forKey:PREFdisplayBankTwo];
[defaults setBool:displayBankThree forKey:PREFdisplayBankThree];

[bankOneFlag setState:NSOnState];

[bankTwoFlag setState:NSOffState];
[bankThreeFlag setState:NSOffState];

}

最佳答案

如果我理解正确,您可以尝试使用 radio 组(NSMatrix)。而不是 3 个单独的复选框。并使用 IB 中的绑定(bind)将其值选择绑定(bind)到共享的用户默认值。

在 IB 中的绑定(bind)中,(矩阵绑定(bind))只需勾选绑定(bind)到:共享用户默认 Controller 。并在模型 key 路径中为首选项条目命名。

给你一个想法:我您甚至可以将其他对象绑定(bind)到相同的模型 key 路径名称。 IE您可以在IB中添加一个标签(NSTextField),并将其值绑定(bind)到共享的用户默认 Controller 。并将其模型 key 路径设置为您在 radio 组的模型 key 路径中指定的名称。

运行时,标签将显示单选按钮打开的索引号。

关于cocoa - NSUserDefaults,具有三个选项的一项首选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4789651/

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