Предупреждение: форматировать не строковый литерал и не форматировать аргументы.Есть идеи? - PullRequest
0 голосов
/ 20 августа 2011
- (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 голосов
/ 20 августа 2011

Метод stringWithFormat: принимает строковый формат с n аргументами.Для своих нужд просто используйте:

NSString *message = rowValue;

В соответствии с примером кода вам не нужно выделять память для строкового объекта или предоставлять определенный формат.

...