Cocoa 使用NSUserDefaults基于NSPopUpButton选择保存NSTextField属性
我在应用程序中添加了一个选项,可以更改Cocoa 使用NSUserDefaults基于NSPopUpButton选择保存NSTextField属性,cocoa,nsuserdefaults,nstextfield,Cocoa,Nsuserdefaults,Nstextfield,我在应用程序中添加了一个选项,可以更改NSTextField的背景色和文本色。我设置了一个nspoupbutton,并根据nspoupbutton中的选定项更改颜色。我想使用NSUserDefaults保存此选择。我用这个方法来改变背景颜色和文本颜色,效果很好。如何使用NSUserDefaults保存属性并在启动时进行设置 - (IBAction)addBarColor:(id)sender { if ([addBarColor.titleOfSelectedItem isEqualTo
NSTextField
的背景色和文本色。我设置了一个nspoupbutton
,并根据nspoupbutton
中的选定项更改颜色。我想使用NSUserDefaults保存此选择。我用这个方法来改变背景颜色和文本颜色,效果很好。如何使用NSUserDefaults
保存属性并在启动时进行设置
- (IBAction)addBarColor:(id)sender {
if ([addBarColor.titleOfSelectedItem isEqualToString:@"White"]) {
addressBar.backgroundColor = [NSColor whiteColor];
addressBar.textColor = [NSColor blackColor];
}
else {
//default state
addressBar.backgroundColor = [NSColor redColor];
addressBar.textColor = [NSColor whiteColor];
}
}
在您的行动方法中,首先设置如下:- 现在,在这个操作中,无论何时设置颜色,它都将保存为刚才添加到此处的两行默认颜色
- (IBAction)addBarColor:(id)sender {
NSUserDefaults *default=[NSUserDefaults standardUserDefaults];
[default setObject:addBarColor.titleOfSelectedItem forKey:@"selectedColor"];
//Process your code
}
//现在,只需从默认值中读取保存的颜色,然后设置到弹出按钮中
-(void)awakeFromNib
{
NSUserDefaults *default=[NSUserDefaults standardUserDefaults];
NSString *defColor=[default ObjectForKey:@"selectedColor"];
if (defColor)
{
[addBarColor selectItemWithTitle:defColor];
}
}