0

我正在尝试做一件事但没有成功。我不知道这是一个概念错误还是其他什么。

我在 NSUserDefaults 中保存了一些数据,但我想动态创建密钥,因为我事先不知道我将拥有多少个密钥,因此它们将根据其他字符串动态创建。

这是为了保存数据:

[defaults setObject:anObject forKey:@"aKey"];
[defaults synchronize];

这就是我正在做的

NSString *myString = @"aString";
[defaults setObject:anObject forKey:@"%@",myString];
[defaults synchronize];

不幸的是,它返回“方法调用的参数太多,预期 2,有 3”

你认为我想做的事有可能吗?提前致谢

4

1 回答 1

1

如果方法需要 NSString,则不能指定格式。

代替

[defaults setObject:anObject forKey:@"%@",myString];

[defaults setObject:anObject forKey:[NSString stringWithFormat:@"%@", myString]];

或者简单地说:

[defaults setObject:anObject forKey:myString];
于 2013-03-18T10:41:18.243 回答