Помогите добавить строку в окне оповещения - PullRequest
1 голос
/ 17 сентября 2009

У меня есть жало, равное текстовому полю, которое я хочу вставить в UIAlertView.

NSString *finalScore = [[NSString alloc] initWithFormat:[counter2 text]];

UIAlertView *myAlertView = [[UIAlertView alloc]
                                initWithTitle:finalScore
                                message:@"You scored X points"
                                delegate:self
                                cancelButtonTitle:nil
                                otherButtonTitles:@"OK", nil];

[myAlertView show];
[myAlertView release];

Я хочу заменить «X» на счет из строки «finalScore»

Я знаю, как это сделать только с партитурой, просто введите имя строки без кавычек в разделе сообщений, но я хочу, чтобы текст там тоже был вместе со строкой.

Спасибо большое, Chase

Ответы [ 3 ]

4 голосов
/ 17 сентября 2009

Замените ваш message: параметр на:

message:[NSString stringWithFormat:@"You scored %@ points", finalScore]

Также обратите внимание, что ваш исходный код для finalScore использует форматирование строки без каких-либо аргументов, что является либо неоперативным, либо небезопасным (если он содержит символ %). Вы также пропускаете свой finalScore объект.

1 голос
/ 17 сентября 2009

Попробуйте что-то вроде следующего и передайте его как переменную message для инициализации UIAlertView:

NSString* message = [NSString stringWithFormat:@"You scored %@ points",
                              [counter2 text]];

Возможно, вам придется изменить некоторые подробности о строке форматирования в зависимости от типа, который выходит из [counter2 text], хотя вышеприведенное должно работать во многих случаях, с которыми вы столкнетесь.

0 голосов
/ 17 сентября 2009

Вместо:

@"You scored X points"

использование:

[NSString stringWithFormat:@"You scored %@ points", finalScore]
...