ios编程-格式字符串未使用数据参数

发布于 2024-12-11 12:00:12 字数 688 浏览 0 评论 0原文

当我运行以下代码时,我收到 Data argument not use by format string 错误:

- (void)pickerView:(UIPickerView *)thePickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {

NSString *colour = ([colourArray objectAtIndex:row]);

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

[defaults setObject:(colour) forKey:@"colour"];

NSLog(@"NSString =", colour);
NSLog(@"NSUserDefaults =", [defaults objectForKey:@"colour"]);

}

我在两行 NSLog 行上都收到错误。另外,日志内容如下:

2011-10-25 09:01:50.260 Random[35636:b303] NSString =
2011-10-25 09:01:50.260 Random[35636:b303] NSUserDefaults =

谢谢, 亚瑟

I get a Data argument not used by format string error when I run the following code:

- (void)pickerView:(UIPickerView *)thePickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {

NSString *colour = ([colourArray objectAtIndex:row]);

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

[defaults setObject:(colour) forKey:@"colour"];

NSLog(@"NSString =", colour);
NSLog(@"NSUserDefaults =", [defaults objectForKey:@"colour"]);

}

I get the error on both NSLog lines. Also, here is what the log says:

2011-10-25 09:01:50.260 Random[35636:b303] NSString =
2011-10-25 09:01:50.260 Random[35636:b303] NSUserDefaults =

Thank you,
Arthur

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

夕色琉璃 2024-12-18 12:00:12
NSLog(@"NSString = ", colour);    
NSLog(@"NSUserDefaults =", [defaults objectForKey:@"colour"]);

有问题

应该是

NSLog(@"NSString = %@", colour);
NSLog(@"NSUserDefaults = %@", [defaults objectForKey:@"colour"]);

本例中的格式说明符是用于打印对象%@。要打印数字,您可以使用类似 %d 的内容。 在此处查看完整文档。

NSLog(@"NSString = ", colour);    
NSLog(@"NSUserDefaults =", [defaults objectForKey:@"colour"]);

Is problematic

Should be

NSLog(@"NSString = %@", colour);
NSLog(@"NSUserDefaults = %@", [defaults objectForKey:@"colour"]);

The format specifier in this case is the %@ which is used to print an object. To print numbers you'd use something like %d. See complete documentation here.

你爱我像她 2024-12-18 12:00:12

@debuggerman 的回答绝对正确。但是,如果您使用 [defaults setObject:colour forKey:@"colour"]; 而不是 [defaults setObject:(colour) forKey:@"colour"];< /code>

请注意,我删除了对象颜色 的括号。

Answer from @debuggerman is absolutely correct. But you can improve your code if you use [defaults setObject:colour forKey:@"colour”]; instead of [defaults setObject:(colour) forKey:@"colour"];

Note that I removed the parentheses for object colour.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文