0

我正在用 UIPickerView 做一个 Iphone 应用程序。选择器视图有两列包含 NSString。我有一个按钮,它生成一个包含 PickerView 中两列的选定值的 NSString 并将其打印在日志中。

问题是即使我更改了选定的值,它也只会打印选择器视图中的前两项。

而且我还收到一条警告,“格式化不是字符串文字,也没有格式参数”。即使我检查了谷歌的线索,我也不知道。

这是按钮操作的代码:

- (IBAction) sendButtonTapped:(id)sender{
    NSString* theMessage = [NSString stringWithFormat:@"I'm %@ and feeling %@ about it.",
                            [activities objectAtIndex:[tweetPicker selectedRowInComponent:0]],
                            [feelings objectAtIndex:[tweetPicker selectedRowInComponent:1]]];
    NSLog(theMessage);
}
4

1 回答 1

0

记录选定的行号以分解问题:

NSLog(@"selectedRowInComponent0: %i", selectedRowInComponent:0);
NSLog(@"selectedRowInComponent1: %i", selectedRowInComponent:1);

假设 tweetPicker 也是一个 NSArray 记录它:

NSLog(@"tweetPicker: %@", tweetPicker);

似乎 NSLog 想要一个常量字符串作为第一个参数:

NSLog(@"%@", theMessage);

于 2009-11-18T16:17:03.650 回答