警告:格式不是字符串文字,也不是格式参数。有任何想法吗?

时间:2011-08-19 22:18:43

标签: xcode xcode4 nsstring

- (void)tableView:(UITableView *)tableView
didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
NSArray *listData =[self.tableContents objectForKey:
                    [self.sortedKeys objectAtIndex:[indexPath section]]];
NSUInteger row = [indexPath row];
NSString *rowValue = [listData objectAtIndex:row];

NSString *message = [[NSString alloc] initWithFormat:rowValue];

UIAlertView *alert = [[UIAlertView alloc]
                      initWithTitle:@"You Better Be There Or Be Watching It!"
                      message:message delegate:nil
                      cancelButtonTitle:@"Go Knights!"
                      otherButtonTitles:nil];
[alert show];
[alert release];
[message release];
[tableView deselectRowAtIndexPath:indexPath animated:YES];
}


Line of code that throws error: 
NSString *message = [[NSString alloc] initWithFormat:rowValue];
----------
 Warning Message: format not a string literal and no format arguments

1 个答案:

答案 0 :(得分:0)

stringWithFormat:方法采用带n个参数的字符串格式。根据您的需要,只需使用:

NSString *message = rowValue;

根据您的代码示例,您不需要为字符串对象分配内存或提供某种格式。