我在plist的根目录中存有对象和键(其中一个是从用户文本字段输入的)。我没有问题写作和创建结构;它试图读取导致问题的值。在我用来编写数据的代码下面,有人能告诉我如何读取字符串[val]和[myKey]?如何从NSUserDefaults中读取字符串
谢谢!
#define defaultValue @"Your Name"
#define myKey @"PersonName"
- (void)textFieldAction:(id)sender {
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString *val;
// Get the new value from the textfield
val = [myTextField stringValue];
if ([val isEqualToString:defaultValue]) {
[defaults removeObjectForKey:myKey];
} else {
// [defaults setObject:val forKey:myKey];
NSDictionary *my_dict = [NSDictionary dictionaryWithObjectsAndKeys:
@"Name", @"PersonName",
@"Email", @"PersonEmail",
@"Dept", @"PersonDept",
@"Job", @"PersonJob",
val, myKey,
@"Status", @"PersonStatus",
nil];
[defaults setObject: my_dict forKey: @"Person"];
[[NSUserDefaults standardUserDefaults] registerDefaults:my_dict];
我想自动填充文本框与[VAL],为[的myKey],如果用户在plist中已经信息。下面是我试图使用该代码:
- (void)applicationDidFinishLaunching:(NSNotification *)notification {
NSUserDefaults *defaults = [[NSUserDefaults standardUserDefaults] objectForKey:myKey];
NSString *val = [defaults stringForKey:myKey];
if (val == nil) val = defaultValue;
[myTextField setStringValue:val];
这段代码是否实际编译? – sch 2012-02-29 13:26:14
heh。是的,它没有问题,它一定不是那么糟糕,对吧? :-p – Devon 2012-02-29 13:43:10
它不是一个iOS应用程序,它是我的.h文件中的OS X. – Devon 2012-02-29 13:48:26